串口相关
小弟目前在做一个跟单片机通讯的上位机程序,先给单片机发送5个字节的数据,然后他会返回5个字节的数据,我开始用VISA对其操作,我发现他对返回信息都可以读出5个字节,但VISA读取的时候他对有些地址返回的信息总会漏掉2个几个不读,然后我需要在后面再加一个VISA来把他读出来,所以我现在还是不明白为什么会出现这种情况…………希望那位大哥能帮小弟解释一下
最后我又用MSCOMM32来做,我发现发送过去的数据都是对的,但他就是不返回任何信息,(注:我用串口调试工具测试正常)
我也弄不明白了 返回什么数据?贴上来看看 其实返回的数据正常
我这边返回的 用十六进制表示: AA20 0A 后面还漏掉了两个字节 0000
有的会漏掉一个字节 正常显示就是:AA20 0A00 00
其实我用VB,和串口工具调试后都返回的数据正常 我就知道是0A,在visa configure serial port.vi里,0A是用来表示结束字符的,而且默认结束字符有效,你可以设置下,使得结束字符为disable就可以了 呵呵,问题解决,我现在还是想解决,MSCOMM32的问题,这个是为什么啊 不好意思,这个我没用过,你可以把程序发上来,大家会帮你看下 附件里面是 VISA 和COMM32两种通讯方式,VISA的会返回数据,MCOMMM32的不会返回,用串口工具可以看出他们发出去的数据都一样的 读取的时间够长吗?如果单片机发送时,每两个字节间的时间长一点,总时间超过了VISA的读取时间,那么后面的可能读不到。 时间够的,单片机返回的时间很短的 我看了下,你两个程序基本是一样的,唯一的区别是mscom这个好象没有给comport这个property赋值,默认是0,我不知道和com1是不是对应的 你说的这么comport这个property赋值是哪个属性?这个控件里面很多属性,我没能完全理解?大哥能告诉我吗 你可以到\windows\help\comm98.hlp去看下 大哥有QQ吗?我想跟大哥在QQ上联系比较方便我的QQ:251973477 嘿,不好意思,mscom我昨天看了你的帖子才去了解了下,可能帮不上你的忙
页:
[1]