请高手解惑:labview下用visa和单片机串口通讯
时间:12-13
整理:3721RD
点击:
各位大虾:我想利用labview串口visa实现单片机和pc的协议通讯,
单片机发送数据包协议就类是:55 ff 命令号 数据长度 ** ** **(数据)crc
但是发现用visa实现这个很困难,我现在是使用string subset.vi和
split string.vi来对数据包去头去尾实现的,但这只能适用于固定长度数据包,
对变长和需要校验crc的根本就不行,不知各位大虾是怎么处理的。
怎么才能使用中断来实现与单片机的通讯和协议的解析,就像在vc中一样。
另外还有有几个问题想不通:
那个visa必须要指定接受字符的个数和timeout时间,但是下位机和
时发数据和数据量的多少都是不定的。老是因为这些原因死机。怎么让它一直监听?
说的有点乱,希望大虾们解惑,万分感谢
单片机发送数据包协议就类是:55 ff 命令号 数据长度 ** ** **(数据)crc
但是发现用visa实现这个很困难,我现在是使用string subset.vi和
split string.vi来对数据包去头去尾实现的,但这只能适用于固定长度数据包,
对变长和需要校验crc的根本就不行,不知各位大虾是怎么处理的。
怎么才能使用中断来实现与单片机的通讯和协议的解析,就像在vc中一样。
另外还有有几个问题想不通:
那个visa必须要指定接受字符的个数和timeout时间,但是下位机和
时发数据和数据量的多少都是不定的。老是因为这些原因死机。怎么让它一直监听?
说的有点乱,希望大虾们解惑,万分感谢
我也做过类似的东西,在处理协议的时候,我是用dll做的,用lv来分析十六进制的字符
实在是太困难
在通讯过程中,你可以隔一定查询一下串口时候是否有数据,有数据就读出来,timeout可以设置的比查询间隔大一些,或者-1。
是用vc实现232通讯协议解析,编译成dll供lv调用,
lv实现显示和监控吗? 还是避免不了vc阿,呜呜!