我是新手问个vb的mscomm控件问题。在vb6.0里可以看到接收发送数据吗。说的详细,一定追加

2024-12-02 11:23:10
推荐回答(3个)
回答1:

看MSDN啊,里面有
Private Sub Form_Load ()
' 保存输入子串的缓冲区
Dim Instring As String
' 使用 COM1。
MSComm1.CommPort = 1
' 9600 波特,无奇偶校验,8 位数据,一个停止位。
MSComm1.Settings = "9600,N,8,1"
' 当输入占用时,
' 告诉控件读入整个缓冲区。
MSComm1.InputLen = 0
' 打开端口。
MSComm1.PortOpen = True
' 将 attention 命令送到调制解调器。
MSComm1.Output = "ATV1Q0" & Chr$(13) ' 确保
' 调制解调器以"OK"响应。
' 等待数据返回到串行端口。
Do
DoEvents
Buffer$ = Buffer$ & MSComm1.Input
Loop Until InStr(Buffer$, "OK" & vbCRLF)
' 从串行端口读 "OK" 响应。

' 关闭串行端口。
MSComm1.PortOpen = False
End Sub

回答2:

1、你的计算机需要有硬串口,然后找个接口线,短接2、3脚,就可以进行测试了。
2、如果你的计算机没有串口,你需要下一个虚拟串口软件进行虚拟串口设置。
程序百度一下,有得是。

回答3:

LZ先得将COM口的2和3脚短接,才能实现自发自收.

Private Sub Command1_Click()
MSComm1.Output = Text1.Text
End Sub
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "9600,n,8,1"
MSComm1.RThreshold = 1
MSComm1.InputMode = comInputModeText
MSComm1.PortOpen = True
End Sub
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case 2
Text2 = MSComm1.Input
End Select
End Sub

问题二、能不能讲讲两个PC间实现接收发送的流程
取决于两PC的COM口的正确连接,代码与上面的相似.