基于wince6.0 开发的应用程序 ad采集问题

wy1299330907 2017-05-31 08:18:07
应用程序基于wince6.0 开发的,程序的流程是这样的:系统初始化的时候ad会采集电压值,初始化完成后,在主界面会把电压值显示出来,现在遇到的问题是:第一次上电的时候,等应用程序启动好之后,显示电压值为0,就是说第一次没采集到值,当随便点击主界面的任何一个地方,这个时候采集到的值就是正确的,我搞不懂这是为什么?程序里是每隔一段时间采集一次电压值,如果说上电之后,我不点击屏幕,那电压值显示出来的就一直是0,请大神讲解一下!!!!!谢谢
...全文
740 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_43485400 2018-12-25
  • 打赏
  • 举报
回复
不行你就把你得代码贴出来
  • 打赏
  • 举报
回复
不行你就把你得代码贴出来
wy1299330907 2017-06-09
  • 打赏
  • 举报
回复
引用 16 楼 bigwatercar 的回复:
[quote=引用 14 楼 zgl7903 的回复:] 可能有依赖窗口的消息处理的操作?可以试试程序流程改一下,先建界面,初始化IO,创建线程
引用 15 楼 qq_19349435 的回复:
[quote=引用 14 楼 zgl7903 的回复:] 可能有依赖窗口的消息处理的操作?可以试试程序流程改一下,先建界面,初始化IO,创建线程 [/quote 试了下,改变顺序会出现更多的问题
从你这个“改了更多问题”的说法感觉你的程序设计上挺乱的。 你这个应该是驱动没配置好。 你也可以写个不要界面的console程序直接试试。这种东西无非就是打开文件,ioctl设置配置参数,然后read,没啥复杂流程。[/quote] 对我这种新手来说,有些复杂的 我可能实现不了,最好这种带代码的例子,或者简单的方法,复杂的看不懂
zgl7903 2017-06-06
  • 打赏
  • 举报
回复
可能有依赖窗口的消息处理的操作?可以试试程序流程改一下,先建界面,初始化IO,创建线程
  • 打赏
  • 举报
回复
引用 14 楼 zgl7903 的回复:
可能有依赖窗口的消息处理的操作?可以试试程序流程改一下,先建界面,初始化IO,创建线程
引用 15 楼 qq_19349435 的回复:
[quote=引用 14 楼 zgl7903 的回复:] 可能有依赖窗口的消息处理的操作?可以试试程序流程改一下,先建界面,初始化IO,创建线程 [/quote 试了下,改变顺序会出现更多的问题
从你这个“改了更多问题”的说法感觉你的程序设计上挺乱的。 你这个应该是驱动没配置好。 你也可以写个不要界面的console程序直接试试。这种东西无非就是打开文件,ioctl设置配置参数,然后read,没啥复杂流程。
qq_19349435 2017-06-06
  • 打赏
  • 举报
回复
[quote=引用 14 楼 zgl7903 的回复:] 可能有依赖窗口的消息处理的操作?可以试试程序流程改一下,先建界面,初始化IO,创建线程 [/quote 试了下,改变顺序会出现更多的问题
qq_19349435 2017-06-04
  • 打赏
  • 举报
回复
引用 12 楼 uid123 的回复:
从反馈信息上看,貌似是AD采集装置没有被winCE6.0识别,winCE6.0没识别外设,或者外设设置和本身不符,程序没多久就会退出,或者说根本就进不了程序。
但是,应用程序启动成功之后,随便点击屏幕一下,就可以采集到值了 不理解这是为什么
uid123 2017-06-03
  • 打赏
  • 举报
回复
从反馈信息上看,貌似是AD采集装置没有被winCE6.0识别,winCE6.0没识别外设,或者外设设置和本身不符,程序没多久就会退出,或者说根本就进不了程序。
wy1299330907 2017-06-01
  • 打赏
  • 举报
回复
引用 9 楼 wy1299330907 的回复:
[quote=引用 8 楼 bigwatercar 的回复:] [quote=引用 7 楼 wy1299330907 的回复:] [quote=引用 1 楼 bigwatercar 的回复:] 采集线程有没有动作? 可能你程序没焦点的时候,后台采集根本没动。
你好!我用WM_KILLFOCUS命令,验证了一下,确实是界面没有焦点,请问下怎么让界面获得焦点?请讲解的详细哈,谢谢![/quote] 重点不是获取焦点。 而是你鼠标点击界面的时候,程序有没有做什么事情?[/quote] 没有做什么事的,WM_KILLFOCUS命令验证的时候是因为在初始化对话框里加了SetFocus,如果不加这句话,是不会执行WM_KILLFOCUS里面的命令的[/quote] 鼠标就是连续点击几下,程序退出,回到6.0系统
wy1299330907 2017-06-01
  • 打赏
  • 举报
回复
引用 8 楼 bigwatercar 的回复:
[quote=引用 7 楼 wy1299330907 的回复:] [quote=引用 1 楼 bigwatercar 的回复:] 采集线程有没有动作? 可能你程序没焦点的时候,后台采集根本没动。
你好!我用WM_KILLFOCUS命令,验证了一下,确实是界面没有焦点,请问下怎么让界面获得焦点?请讲解的详细哈,谢谢![/quote] 重点不是获取焦点。 而是你鼠标点击界面的时候,程序有没有做什么事情?[/quote] 没有做什么事的,WM_KILLFOCUS命令验证的时候是因为在初始化对话框里加了SetFocus,如果不加这句话,是不会执行WM_KILLFOCUS里面的命令的
  • 打赏
  • 举报
回复
引用 7 楼 wy1299330907 的回复:
[quote=引用 1 楼 bigwatercar 的回复:] 采集线程有没有动作? 可能你程序没焦点的时候,后台采集根本没动。
你好!我用WM_KILLFOCUS命令,验证了一下,确实是界面没有焦点,请问下怎么让界面获得焦点?请讲解的详细哈,谢谢![/quote] 重点不是获取焦点。 而是你鼠标点击界面的时候,程序有没有做什么事情?
wy1299330907 2017-06-01
  • 打赏
  • 举报
回复
引用 1 楼 bigwatercar 的回复:
采集线程有没有动作? 可能你程序没焦点的时候,后台采集根本没动。
你好!我用WM_KILLFOCUS命令,验证了一下,确实是界面没有焦点,请问下怎么让界面获得焦点?请讲解的详细哈,谢谢!
wy1299330907 2017-06-01
  • 打赏
  • 举报
回复
引用 4 楼 uid123 的回复:
是不是扫描顺序问题,先扫描键盘,然后才扫描屏幕?估计是不扫描键盘不重置标志位。
程序里是这样的,先初始化io等,建立刷新的线程,然后在创建届面,创建的时候调用刷新线程里采集到的值显示在界面里
wy1299330907 2017-06-01
  • 打赏
  • 举报
回复
引用 3 楼 kacyquan 的回复:
涉及到两个地方: 涉及到几个东西的先后顺序,(1)应用程序启动,(2)控件刷新,(3)采集电压的动作。 正确的顺序是 (1) -》 (3) -》 (2) 你的可能是 (1) -》 (2) -》 (3)了
您好!如果是应用程序调用的问题,那么它底层驱动应该能采集到电压值,串口打印信息里,底层的驱动没有采集到实际的电压值,底层程序的是厂家给的
wy1299330907 2017-06-01
  • 打赏
  • 举报
回复
引用 楼主 wy1299330907 的回复:
应用程序基于wince6.0 开发的,程序的流程是这样的:系统初始化的时候ad会采集电压值,初始化完成后,在主界面会把电压值显示出来,现在遇到的问题是:第一次上电的时候,等应用程序启动好之后,显示电压值为0,就是说第一次没采集到值,当随便点击主界面的任何一个地方,这个时候采集到的值就是正确的,我搞不懂这是为什么?程序里是每隔一段时间采集一次电压值,如果说上电之后,我不点击屏幕,那电压值显示出来的就一直是0,请大神讲解一下!!!!!谢谢
下面是串口打印出来的东西 [ADC]ADC_Open:Open Success! HWOpen set UART1 to (UART)Normal mode IOCTL_SERIAL_SET_QUEUE_SIZE not supported [ADC_Read] Begin! ADC_READ: AD READ Failed! ADC_READ: AD READ Failed! ADC_READ: AD READ Failed! ADC_READ: AD READ Failed! ADC_READ: AD READ Failed! ADC_READ: Read Succees! ADCDATA 0 0 0 0 0
  • 打赏
  • 举报
回复
采集线程有没有动作? 可能你程序没焦点的时候,后台采集根本没动。
uid123 2017-05-31
  • 打赏
  • 举报
回复
是不是扫描顺序问题,先扫描键盘,然后才扫描屏幕?估计是不扫描键盘不重置标志位。
InsaneCode 2017-05-31
  • 打赏
  • 举报
回复
涉及到两个地方: 涉及到几个东西的先后顺序,(1)应用程序启动,(2)控件刷新,(3)采集电压的动作。 正确的顺序是 (1) -》 (3) -》 (2) 你的可能是 (1) -》 (2) -》 (3)了
wy1299330907 2017-05-31
  • 打赏
  • 举报
回复
引用 1 楼 bigwatercar 的回复:
采集线程有没有动作? 可能你程序没焦点的时候,后台采集根本没动。
请问怎么验证是不是这个问题啊? 用串口打印信息可以看到是 底层驱动采集到值为零,应用程序调用底层也是现实采集到的值是零

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧