程序如下,是不是Mscomm控件没有设置好?向大家请教了
Dim Ok(5) As Byte
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "9600,e,8,1"
MSComm1.InputMode = comInputModeBinary
MSComm1.RThreshold = 1
Ok(0) = &H10
Ok(1) = &H2
Ok(2) = &H0
Ok(3) = &H5C
Ok(4) = &H5E
Ok(5) = &H16
End Sub
Private Sub MSComm1_OnComm()
Dim Rcv_Data() As Byte
Se1ect Case MSComm1.CommEvent
Case comEvReceive
Rcv_Data = MSComm1.Input
Text1.Text = Rcv_Data
If Rcv_Data(0) = &HE5 Then
MSComm1.Output = Ok
End If
End Se1ect
End Sub
Private Sub OpenCom_Click()
If Not MSComm1.PortOpen Then
MSComm1.PortOpen = True
OpenCom.Caption = "关闭串口"
Else
MSComm1.PortOpen = False
OpenCom.Caption = "打开串口"
End If
End Sub
Private Sub Send_Click()
Dim Send() As Byte
Dim i As Integer
Dim Temp() As String
Const Temp_Str = "68 21 21 68 02 00 7C 32 01 00 00 00 00 00 0E 00 05 05 01 12 0A 10 01 00 01 00 00 83 00 00 00 00 03 00 01 01 00 80 16"
MSComm1.RThreshold = 1
Temp = Split(Temp_Str, " ")
ReDim Send(UBound(Temp))
For i = 0 To UBound(Temp)
Send(i) = Val("&H" & Temp(i))
Next i
MSComm1.Output = Send
Text1.Text = Rcv_Data + Text1.Text
If Len(Text1.Text) = 0 Then
Text1.Text = "empty"
End if
End Sub