标题:(求助)串口定时发送数据
只看楼主
lylyl13
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2013-8-26
 问题点数:0 回复次数:1 
(求助)串口定时发送数据
采用vb2010自带的serialport类,在定时器事件里面发送指令并接收返回数据,定时器时间间隔interval是1s,串口的超时属性readtimeout设置为2s,现在看来是等待数据返回根本不会等待2s 发送还是1s一次,是不是readtimeout用法的问题?

另一个问题:定时器和串口也是联合使用,定时器时间间隔是1s,在这1s时间内发送指令接收数据,有时在这1s之内代数据接收不完整,到了时间又会继续发送,就会导致出错。不想改定时器间隔的情况下,这种问题如何解决?如何延迟发送
搜索更多相关主题的帖子: 定时器 联合 如何 
2013-08-26 13:51
danliandeyu
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-4-8
得分:0 
回复 楼主 lylyl13
readtimeout是串口接收超时时间跟接收数据等待时间没有关系,串口接收是靠事件SerialPort1_DataReceived的触发,SerialPort1_DataReceived触发的条件是接收数据的个数 SerialPort1.ReceivedBytesThreshold来设定的。
另外的问题可以通过定义读取标志位来解决,当串口处于读取状态时读取标志位置为1,定时器检测到读取标志位为1时就不发送数据即可。
2013-11-08 14:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-419666-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.115805 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved