VB如通过USBRS232(短接2,3)何能接收到,为什么我一发送就死循环

2025-03-19 07:15:53
推荐回答(2个)
回答1:

Private Sub Form_Load()
Comm1.PortOpen = True
End Sub

Private Sub cmdSend_Click()
Comm1.Output = Trim(txtsend.Text)
End Sub

Private Sub cmdExit_Click()
Comm1.PortOpen = False
End
End Sub

Private Sub cmdReceive_Click()
Dim buf$
buf = Trim(Comm1.Input)
If Len(buf) = 0 Then
txtReceive.Text = "empty"→→错误就在这儿!删掉,换成我写的下面两句
MsgBox "左边已经为空!"
Exit Sub
Else
txtReceive.Text = buf
End If
End Sub

回答2:

应该在Comm1.PortOpen = True前增加一条传输数据方式
Comm1.InputMode = comInputModeText(也可以是comInputModeBinary,根据你自己的情况)
并在发送数据时加上延迟时间及延迟旗标(如sendcontent,10, TimeOutFlag),以判断发送后的执行情况。