vb mscomm串口 判断终端设置故障 使用vb中的mscomm控件进行读取和写入终端设备操作,一切都正常,可就不知道怎么判断终端设置故障(没有信号输出或者终端设备被拔出,我采用的是MSComm_OnComm进行读取操作),不知道mscomm中那个属性值能进行判断,还是用commEvent中的属性值进行判断?如果是应该是那个值? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼上说的我明白,可是我是利用mscomm中的Rthreshold属性赋值多少字符才执行串口事件的,就是读到多少字符的时候执行OnComm,这样应该怎么判断终端设备故障?假如终端设备没有故障一切正常,收发都正常,假如终端不正常了,就不可能执行OnComm事件了,因为读不到数据,不知道怎么判断???? 我规定的握手协议就是一发一收了,发当然是计算机执行的(人为发送),接受我是规定接收到多少字符才执行ONCOmm事件了,就是我赋值给Rthreshold了,总不能是if 对象.Rthreshold=0 then 做我自己想做的事情吧,可是我是人为规定Rthreshold=10啊,那样是不可能执行Rthreshold=0嘛? 一般串口连续发送的每笔长度都是固定的, 例如你说的每笔10个字则 Rthreshold=10 如不固定长度你只能用Rthreshold=1 并以STX与ETX来判断了.不管长度固不固定,只要在几毫秒或几秒之内都没数据进来的话,马上就可断定联线失败了. 串口.Rthreshold=10的时候才执行ONCOmm,在oncomm中才能判断所要接收到的值多少,如果终端设备故障,那么就不会执行oncomm事件,接收到的值仍然是终端设备正常情况下的值,因为这个值很多地方要用到,所以我只能设置该值为全程变量值,在没有执行oncomm的时候他的值还是上次终端设备正常的值啊?所以无法判断终端设备正常否啊? 说白了就是如何判断终端设备的故障,在使用事件oncomm读取数据的时候?终端设备故障不执行oncomm事件,读到的值还是上次的值(该值设置了全程变量,因很多地方需要使用) 如果你的通讯过程是一发一收,就不可能不知道是否执行了 oncomm 事件。比如说,你设一个全局变量 blnUpdated As Boolean,在发送命令时将其设置为 False。在 OnComm 事件中将其赋值为 True。如果过了若干毫秒此变量还是 False,就可以认为是通讯故障。 关键是现在不执行oncomm事件了,因为他不接收不到数据啊(终端设备故障了),那么就无法实现了?好像没有接受到终端设备的数据的时候(当Rthreshold=10的情况下),是否就不可能执行oncomm事件呢? 急,急.... vb 添加注册表项 如果设置一个使用了API的关机按钮 如何在VB当中获得cpu id? 如何使用SHELL同步调用外部程序 谁在用 梦想家 786 显示器? 高人请问,listview怎么用,能否告知一二? 谁用过明华读写器提供的dll编写代码?我为什么读不出来0扇0块的序列号 读写文件 VB进销存系统,销售收费打印票据,同时将票据信息写如数据库?如何实现...没有思路不明白啊 ####我拼了命也要问出这个问题的答案########## 内存表的问题 如何在记事本里输入"号
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货