0

我实际上是在尝试从中获取数据,port1Invalid port number生成了错误。

代码是:

Private Sub Command1_Click()
    MsgBox ("The port is open " & MSComm1.PortOpen)
    If (MSComm1.PortOpen = False) Then
    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 = "9600,N,8,1"
    .InputLen = 127
    .SThreshold = 1
    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
4

2 回答 2

1

尝试不同的 COM 端口。可接受 1 到 16 之间的数字。

' Open the serial port
MSComm1.CommPort = 2
MSComm1.Settings = "9600,N,8,1"
MSComm1.PortOpen = True

"CommPort 属性设置要打开哪个串口。假设调制解调器连接到 COM2,上面的示例将值设置为 2 (COM2) 并连接到调制解调器。您可以将 CommPort 属性值设置为 1 到 1 之间的任意数字16(默认值为 1)。但是,如果将此值设置为运行应用程序的系统不存在的 COM 端口,则会生成错误。

酱汁:dx.eng.uiowa.edu/eedesign/MScomm.doc

于 2013-01-09T18:10:09.947 回答
0

看看我在以下答案中发布的代码:

搜索可用的 COM 端口

运行该代码将为您提供可用 com 端口的列表

在您的代码中使用它,并让您的代码从该列表中选择一个 com 端口

于 2013-01-10T08:47:02.630 回答