首先用一根串口线把两个串口连上。
然后打开VB,放两个TextBox控件,两个MSComm控件,一个CommandButton控件,其他什么都不做,直接加入以下代码:
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm2.CommPort = 2
MSComm1.PortOpen = True
MSComm2.PortOpen = True'
End SubPrivate Sub Command1_Click()
Dim str As String
MSComm1.Output = Text1.Text & Chr$(13)
DoEvents
str = str & MSComm2.Input
Text2.Text = str
End Sub但按下CommandButton1后,没有看到Text1的内容被显示在Text2中!!!!
不管Text1输入什么内容后传递,MSComm2.Input总是为空,这是怎么回事。难道是串口线有问题,可是我买了两根线了,不可能两根线都有问题啊,难道是我电脑上的串口有问题???怎么确认这个问题呢?请教各位高手!!!!
然后打开VB,放两个TextBox控件,两个MSComm控件,一个CommandButton控件,其他什么都不做,直接加入以下代码:
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm2.CommPort = 2
MSComm1.PortOpen = True
MSComm2.PortOpen = True'
End SubPrivate Sub Command1_Click()
Dim str As String
MSComm1.Output = Text1.Text & Chr$(13)
DoEvents
str = str & MSComm2.Input
Text2.Text = str
End Sub但按下CommandButton1后,没有看到Text1的内容被显示在Text2中!!!!
不管Text1输入什么内容后传递,MSComm2.Input总是为空,这是怎么回事。难道是串口线有问题,可是我买了两根线了,不可能两根线都有问题啊,难道是我电脑上的串口有问题???怎么确认这个问题呢?请教各位高手!!!!
1、使用MScomm的OnComm事件来检测数据到达;
2、使用时钟轮讯MScomm的属性,检测缓冲区是否有数据到达。你可以参考MSDN的代码例子。