好几年没编程了,好多都忘了。问题 设置串口后,在接受字符哪里出问题,不知道什么原因
Private Sub Command2_Click()
MSComm1.CommPort = 1 '设置通信端口号为COM1
MSComm1.Settings = 19200 & "," & "n,8,1"
MSComm1.InputMode = 0 '接收文本型数据
MSComm1.PortOpen = True '打开通信端口1
End Sub
'接收字符
Private Sub Timer1_Timer()
Dim buf$
Dim shou()
Dim shou1()
Dim i
Dim j
buf = Trim(MSComm1.Input) '将缓冲区内的数据读入buf变量中
If Len(buf) <> 0 Then '判断缓冲区内是否存在数据
TextReceive.Text = TextReceive.Text + buf 'Chr(13) + Chr(10)
TextReceive.SelLength = 1 '光标设置到文本框的最后一行
TextReceive.SelStart = Len(TextReceive.Text) '光标设置到文本框的最后一行
End If
End Sub
'停止程序运行
Private Sub Cmdquit_Click()
Unload Me
End Sub
Private Sub Command2_Click()
MSComm1.CommPort = 1 '设置通信端口号为COM1
MSComm1.Settings = 19200 & "," & "n,8,1"
MSComm1.InputMode = 0 '接收文本型数据
MSComm1.PortOpen = True '打开通信端口1
End Sub
'接收字符
Private Sub Timer1_Timer()
Dim buf$
Dim shou()
Dim shou1()
Dim i
Dim j
buf = Trim(MSComm1.Input) '将缓冲区内的数据读入buf变量中
If Len(buf) <> 0 Then '判断缓冲区内是否存在数据
TextReceive.Text = TextReceive.Text + buf 'Chr(13) + Chr(10)
TextReceive.SelLength = 1 '光标设置到文本框的最后一行
TextReceive.SelStart = Len(TextReceive.Text) '光标设置到文本框的最后一行
End If
End Sub
'停止程序运行
Private Sub Cmdquit_Click()
Unload Me
End Sub
Option ExplicitPrivate Sub Form_Load()
MSComm1.CommPort = 1 '设置通信端口号为COM1
MSComm1.Settings = "19200,n,8,1"
MSComm1.InputMode = comInputModeText '接收文本型数据
MSComm1.PortOpen = True '打开通信端口1End Sub
亲,这个我以前也是这么处理的,但是现在,我想独立的设置一个波特率,然后通过一个按钮赋值给串口的settings属性。所以出现了错误。接收数据的错误
out(nNum) = varP(0)
修改为:
If Not IsNull(varP) Then out(nNum) = varP(0)