1,453
社区成员
发帖
与我相关
我的任务
分享Option Explicit
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.PortOpen = True
MSComm1.Settings = "4800,N,8,1"
MSComm1.InputLen = 0
MSComm1.RThreshold = 2
MSComm1.InputMode = comInputModeBinary
MSComm1.PortOpen = True
TxtJieShou = ""
End Sub
Private Sub MSComm1_OnComm() '串口通信
Dim Rcvdat() As Byte
Dim dattemp As Variant
Dim i As Integer
Dim j As Integer
Dim m As Integer
Dim n As Integer
Select Case MSComm1.CommEvent
Case 2
dattemp = MSComm1.Input '从串口读取数据至变体变量
Rcvdat = dattemp '数据送至接收二进制数组
For i = 0 To (UBound(Rcvdat) + 1) / 2 - 1 '接收数据送至接收文本框txtRcv显示
j = i * 2
TxtJieShou.Text = TxtJieShou.Text & Right(" " & CLng("&H" & (Hex(Rcvdat(j)) & Hex(Rcvdat(j + 1)))), 8) 'Texbox显示
'Exldat(i, 0) = CLng("&H" & (Hex(Rcvdat(j)) & Hex(Rcvdat(j + 1)))) '16位数转换为十进制并由数组存储
Next i
End Select
End Sub