我使用写了一段代码,用来连接COM3商品,并等待接收值。但在打开COM3端口时却报:不能设置comm状态,可能有一个或多个无效的通讯参数
硬件环境:一台机器通过USB线连接到PC机上面,然后PC会产生一个COM3的虚拟COM连接
USB线: 正常的USB数据线,一端是USB,一端是T型口的接口(非COM或LPT接口),与针式打印机使用的USB线一样
PC机COM信息显示: ** USB Serial Device (COM3)
我是刚刚接触到硬件之间的程序开发,没有一经验,之前是做ERP开发的。请各位帮一下,谢谢!
如何使用COM1,运行代码是没有问题的。有没有可能是因为我连接PC用的机器一直把COM3给独占了,如果是这样的话,那我要怎样才能跟它通讯呀,
我的需求是能通过USB连接线访问到它。然后再想办法访问它的信息。。。。。。
代码如下:
Private Sub Form_Load()
With MSComm1
MSComm1.CommPort = 3 '选择通道1
MSComm1.Settings = "2400,N,8,1"
MSComm1.RThreshold = 1 '接受缓冲区每收到2个字符产生oncomm事件
MSComm1.SThreshold = 0 '传输缓冲区为空时产生oncomm事件
MSComm1.InputLen = 0
If Not MSComm1.PortOpen Then
MSComm1.PortOpen = True '打开端口 [color=#FF0000]这里报错 End If[/color] MSComm1.InBufferCount = 0
MSComm1.OutBufferCount = 0
End With
txtReceive.Text = ""
End Sub
Private Sub MSComm1_OnComm()
Dim str As String
Select Case MSComm1.CommEvent
Case comEventOverrun
ClearTxtValue
Exit Sub
Case comEventRxOver
ClearTxtValue
Exit Sub
Case comEventTxFull
ClearTxtValue
Exit Sub
Case comEvReceive
str = MSComm1.Input
txtReceive.Text = str
End Select
End Sub
需要安装驱动.,建议你首先用串口调试器来试验一下,打开COM3,看看串口3是否正常。
或者打开设备管理器看看COM3是否正常。
连接能成功,说明com3已经被驱动,接着,应该将设备通信格式设置和pc相同
还有你的转换线估计有问题,各线的定义必须符合com标准,同时必须是公头
正确地设计、写作和测试一个复杂的多线程应用程序显然是Windows程序写作者可能遇到的最困难的工作之一