vb串口通信问题救助!

来源:百度知道 编辑:UC知道 时间:2024/05/23 12:26:28
最近做毕业设计,单片机远端数据采集,上位机通过RS232转RS485通信.在PC机上显示出来.老师让先把PC机端串行通信这部分编出来.小弟刚学VB,编了以下程序就是不对,还请高手指导.编一个简单的界面,两个文本框.在其中一个输入字符,点击发送.然后再点击接受在另外一个文本框中显示出来.发送和接收程序如下.
Private Sub Command1_Click()
Dim outs As Variant
MSComm1.CommPort = 1
MSComm1.PortOpen = True
outs = txtoutput.Text
MSComm1.Output = outs
End Sub
发送:
Private Sub Command2_Click()
Dim ins As String
MSComm1.InputLen = 0
If MSComm1.InBufferCount Then
ins = MSComm1.Input
txtinput.Text = ins
End If
End Sub
我编辑运行以后显示实时错误’8005’,我用单步调试outs=txtouts.text这个语句可能不对.在txtouts.text中还有值就是我在文本框中随便输入的,但是看outs为空.估计至少这里有问题.还有谢谢各位的回答,但是都只给出程序,也没有说明为什么我的程序哪里不对.
我的邮箱:zhuoxinyuan2006@163.com

Option Explicit
'发送:
Private Sub Command1_Click()
Dim outs As Variant
outs = txtoutput.Text
MSComm1.Output = outs
End Sub

Private Sub Form_Load()
MSComm1.Settings = "9600,N,8,1"
MSComm1.RThreshold = 1
MSComm1.PortOpen = True
txtinput = ""
txtoutput = ""
End Sub

Private Sub MSComm1_OnComm() '接收
Dim ins As String
Select Case MSComm1.CommEvent
Case 2
MSComm1.InputLen = 0
If MSComm1.InBufferCount Then
ins = MSComm1.Input
txtinput.Text = ins
End If
End Select
End Sub

我做的项目全是用RS232转RS485的。。
我给你发一个实例过去吧。。

说一下你的邮箱。。

OK给你发过去了。

你说的详细点儿,具体是怎么个不对法,这样才好帮你啊
我刚做完一个232转485的

Private Sub Command1_Click()
Dim outs As Variant
MSComm1.CommPort = 1 '此行应放在