打印

68013的上位机程序

[复制链接]
1255|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kangzj|  楼主 | 2016-9-11 17:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我正在用VC开发68013的上位机程序,读写都没问题。其中,读我是用的定时器控制,每隔100ms去读一次USB数据。
     只是有一点很奇怪,只要下位机有数据发过来,我上位机读出来的当然没问题,但是如果下位机没有数据发过来,而我此时又去读了USB端口,那么整个程序就呈现“挂起”状态。
沙发
zwll| | 2016-9-11 17:59 | 只看该作者
关不掉是吧

使用特权

评论回复
板凳
kangzj|  楼主 | 2016-9-11 18:00 | 只看该作者
嗯,整个上位机程序呈现“无响应”,关也关不掉。

使用特权

评论回复
地板
chuxh| | 2016-9-11 18:01 | 只看该作者
非得拔掉USB数据线啊

使用特权

评论回复
5
kangzj|  楼主 | 2016-9-11 18:02 | 只看该作者
是啊,我拔掉USB数据线,程序才自动关闭。

使用特权

评论回复
6
juventus9554| | 2016-9-11 18:04 | 只看该作者
你得问题是。。。

使用特权

评论回复
7
kangzj|  楼主 | 2016-9-11 18:05 | 只看该作者

如果USB没有数据发到端口,那么我读出来,会是什么呢?

使用特权

评论回复
8
司徒老鹰| | 2016-9-11 18:06 | 只看该作者

如果没有发送数据,那么USB读取数据就会阻塞在那里。

使用特权

评论回复
9
kangzj|  楼主 | 2016-9-11 18:08 | 只看该作者

用了读操作,返回的传输数据量应该为0吧?

使用特权

评论回复
10
kangzj|  楼主 | 2016-9-11 18:10 | 只看该作者
那也不至于整个系统好像是停在那里,等待数据的输入吧?

使用特权

评论回复
11
llljh| | 2016-9-11 18:11 | 只看该作者
为了使上位机不出现什么反应都没有状态,要启动多线程处理,这样就没问题了

使用特权

评论回复
12
dingy| | 2016-9-11 18:13 | 只看该作者
在上位机中启用线程当然也是一种方法,在CYAPI中的端点类中你可以设置Timeout这个参数,如果参数为0的话,就一直等待,直到收到数据位置,Timeout是从0到1000的,单位是ms,希望可以帮助到你!

使用特权

评论回复
13
pengf| | 2016-9-11 18:14 | 只看该作者

使用异步方式的io吧,就不会“挂起”了

使用特权

评论回复
14
kangzj|  楼主 | 2016-9-11 18:16 | 只看该作者
嗯,那我按大家的说法挨个排查一下,先结贴啦,谢谢哈

使用特权

评论回复
15
夕风| | 2019-1-30 12:14 | 只看该作者
问题解决了吗?我也遇到了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

672

主题

7007

帖子

2

粉丝