【发布时间】:2013-02-27 05:59:57
【问题描述】:
代码是使用串行端口从微控制器或串行设备中的任何设备获取数据,所以我在端口打开和获取数据时遇到问题,最近 20 天都遇到这个问题,请尽早帮助我: )
Private Sub Command1_Click()
MsgBox ("The port is open " & MSComm1.PortOpen)
If (MSComm1.PortOpen = False) Then
MSComm1.PortOpen = True
End If
Command1.Enabled = False
Command2.Enabled = True
End Sub
Private Sub Command2_Click()
If (MSComm1.PortOpen = True) Then
MSComm1.PortOpen = False
End If
Command1.Enabled = True
Command2.Enabled = False
End Sub
Private Sub Form_Load()
With MSComm1
.CommPort = 1
.RThreshold = 1
.RTSEnable = True
.Settings = "9600,N,8,1"
.InputLen = 127
.SThreshold = 1
End With
End Sub
Private Sub Form_Unload(Cancel As Integer)
If (MSComm1.PortOpen = True) Then
MSComm1.PortOpen = False
End If
End Sub
Private Sub MSComm1_OnComm()
Dim Buffer As String
Select Case MSComm1.CommEvent
Case comEvReceive
'Text1.Text = " "
Buffer = MSComm1.Input
Text1.Text = Text1.Text & Buffer
End Select
End Sub!
下面是包含MScomm控件、一个文本框、两个用于连接和断开连接的命令按钮的界面图像:
【问题讨论】:
-
您遇到什么错误?你能用 inputlen=0 试试吗?您是否收到任何数据? (在 text1.text=... 的行上放一个断点并观察缓冲区变量的内容
-
我没有得到任何数据-"INVALID PORT number",RUNTIME ERROR 8002 我连接到端口 1 本身,在设备管理器中检查了它
-
我使用 MAX 232 代替 RS 232 连接外围接口微控制器和计算机
-
我将 RS 232 连接到 USB 端口,com 端口和 USB 端口不一样吗?
标签: vb6 port microcontroller serial-communication mscomm32