使用VB编写串口通信中遇到的小问题
想通过串口通信软件以16进制的数据方式和外界设备进行通信,目前就是将Text控件中的内容通过MSComm发出去,但是由于Text中的内容是文本字符型怎样变为16进制发出去呢?还有MSComm控件说OUTPUT可以用二进制方式,但我在使用时为什么只能向MSComm.Output中放入字符型数据呢? 串口通信 vb
[解决办法]
Public Function HexToArr(Str As String) As Byte()
Dim C As Integer, i As Integer, Arr() As Byte, CH As String
On Error GoTo hErr
C = Len(Str) \ 2 - 1
ReDim Arr(C)
For i = 0 To C
CH = Mid(Str, i * 2 + 1, 2)
Arr(i) = CByte("&H" & CH)
Next
HexToArr = Arr
hErr:
End Function
MSComm1.Output=HexToArr("AABBCC")