各位大哥大姐,MSComm 串口通讯中断怎么自动让它重新连上,如何判断通讯中断。急啊!谢谢各位了
解决方案 »
- 在vb中应用WebBrowser控件,还需要 什么 引用呀
- MSForms.UserForm
- 还是关于COMBO控件
- 跪求
- 我在窗体中放了个activebar控件,结果运行时mdi原有的菜单被activebar 隐藏掉了,请问该怎么弄菜单才可以显示出来啊?
- 本人安装了VB6.0,在编程中每当有错误代码出现,点击“帮助”时总提示“MSDN集合不存在,请重新安装。”请问:1.MSDN集合到底有什么作用?
- 我在VB中嵌入WORD,可打开WORD时,却发现WORD的菜单把我的MDI主窗体上的原有菜单覆盖了,该怎么办?
- 有那位高手谁能告诉我"BlockInput"应该怎么用呀,用VB可以调用吗?能发给我一个范例吗?
- 浮点数的处理
- 解压一压缩文件 TF.zip
- 想搜罗一下 vb 给文件加密的方法
- vb 如何发布dll?
如果串口是否关闭就直接判断MSComm1.PortOpen是否为True.
可以这样If Not MSComm1.PortOpen Then
MSComm1.PortOpen=True
End If 如果你的发送数据和接收都很有规律,你可以定义一个布尔类型的变量,在接收到数据时启用一个Timer(时间自己定义),并将该布尔变量值变为True,在Timer里将该标志位变为False,并禁用Timer,这样在一定时间内没有接收到数据,Timer时间到,变量为False,就可得出串口中断了.(Timer的时间要大于两次数据接收的最大间隔).
如果没有规律那也就不好说了,但你可以自己定义一个字符或字节数据,定时的发送,在接收端按上述方法做处理,时刻通讯是否在线,不在线则作出离线指示或做相应处理.
解方法,通信部分专放一个窗体,通过公共变量传递接收数据.
在其它窗体主动定时UNLOAD 通信窗体,然后再次加载通信窗体(通过对通信窗体的某属性或该窗体的某控件的属性赋值),来避免假死.