《基于mscoomm32和labview的串口通信技术》发表于《国外电子测量技术》2006年,我是第一作者。如果大家对这个感兴趣,可以参考。现在回复:如何发送16进制数据的问题。
在发送数据时,如果是静态数据,可以直接通过一个Hex String的常数与数据发送区联接,或者通过一个10进制的常量经Numeric to HexString的转换送数据发送区;如果是动态数据,比如:D7H、F5H、00H、01H,则需要通过字节型数组进行数据的转换后,进行发送。作者在作串口通信程序时,采用了以下的方法:先构造一个10进制数的数组215、245、0、1,然后通过ByteArray to String函数转换数据类型,再紧接着使用String to ByteArray函数节点,然后再通过To Variant节点把ByteArray函数转换成Variant类型送入数据发送区,则即相当于把D7H、F5H、00H、01H这4个字节的数据发送出去了。切记,一定按照这个原则,否则数据发送不出去,或者不正确。
Variant to Data节点和To Variant节点存放在在ALL FUNCTIONS>>COMMUNICATION>>ACTIVEX下。数据接收的时候,通过Variant to Data节点把变体数据转换成LabVIEW可以显示的数据类型,如果是字节型数组就设置转换为ByteArray类型;如果是字符型数据,就转换成String格式。