快晕死了,mscomm的问题。
我在超级终端中,输入R; 下位机回送 OK
可是用vb写程序调试时,怎么都没有数据回送!! oncomm事件里没有触发 comEvReceive值。
大侠帮看看,感激不尽!!
程序代码如下:
With MSComm1
.CommPort = 1 '使用COM1
.Settings = "9600,N,8,1" '设置通信口参数
.Handshaking = comNone
.InputMode = comInputModeText
.InBufferSize = 4096
.OutBufferSize = 2048
.SThreshold = 1
.RThreshold = 1
'设置接收一个字节产生OnComm事件
.InBufferCount = 0 '清除接收缓冲区
.OutBufferCount = 0 '清除发送缓冲区
If .PortOpen = False Then
'判断通信口是否打开
.PortOpen = True '打开通信口
If Err Then '错误处理
MsgBox "串口通信无效"
Exit Sub
End If
End If
MSComm1.Output = "R;"
End With
在OnComm事件中,进不了comEvReceive。
Private Sub MSComm1_OnComm()
On Error Resume Next
Select Case MSComm1.CommEvent
Case comEvSend
Debug.Print 1
Case comEvReceive
Debug.Print 2
Case comEvCD
End Select
End Sub