当连接到通信端口时,我在文本框中获取垃圾值是因为我的比特率错误,那么我如何识别正确的比特率?我使用VB6从微控制器连接到的通信端口获取数据使用通信端口接收文本框中的垃圾数据
在这里,我已经编写了用于接收19200比特率数据的代码。我只是想知道如何避免垃圾值,但似乎我的微控制器的比特率是19200
Private Sub Command1_Click()
If (MSComm1.PortOpen = False) Then opening port
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 = "19200,N,8,1"
.InputLen = 1000
.SThreshold = 1
.PortOpen = True
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
如果我正在使用试验和错误,我应该尝试改变最多 – user1963933 2013-04-09 08:56:32
我也应该改变inputlen吗? – user1963933 2013-04-09 08:58:09
@ user1963933波特率可以变化。大多数设备使用8,N,1。 InputLen对收到的数据的完整性没有影响,并且只限制您在每次读取控件时收到多少。 – Deanna 2013-04-09 09:11:07