求助,简单的VB程序(脑壳整昏了,百思不解)

[复制链接]
2841|4
 楼主| fxhfxh 发表于 2011-10-13 21:42 | 显示全部楼层 |阅读模式
一个计算机和单片机通信的程序,单片机发出"OK"给计算机,程序段如下:

If MSComm.Input = "OK" Then    '1   
   
     MsgBox ("ok1")        '2
Else
     MsgBox ("ERR")       '3
End If

调试时在2,3处设置断点,但每次都是断在3处,而用鼠标放在1句的MSComm.input上明明显示的是"OK",应该是断在2处才对呀。脑壳整昏了,请知道的朋友指教指教,谢谢先。
highgear 发表于 2011-10-13 23:13 | 显示全部楼层
可能是你的程序没有等待接受。在比较前应判断 MSComm.Input 的长度
古道热肠 发表于 2011-10-14 00:11 | 显示全部楼层
定义一个String 变量,先把数据从Mscomm中读取出来再跟踪也能会更直观些。
hotpower 发表于 2011-10-14 00:36 | 显示全部楼层
晕,放到1说明1还未运行
 楼主| fxhfxh 发表于 2011-10-14 07:48 | 显示全部楼层
谢谢楼上各位大侠的回复,正如上面大侠所说,可能是等待时间不够,在1句前面加了几个延时后,就正确了。昨天晚上想发帖(应该是今天1点多钟),结果发不了。谢谢楼上各位。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

52

主题

382

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部