欢迎来到一句话经典语录网
我要投稿 投诉建议
当前位置:一句话经典语录 > 口号 > vb查询电脑串口号

vb查询电脑串口号

时间:2014-11-18 18:48

怎样在vb中自动检测到可用串口号的具体程序代码

j = 0  For i = 1 To 16 Step 1  If comISP.PortOpen = True Then '先关闭串口  comISP.PortOpen = False  End If  comISP.CommPort = i  On Error Resume Next '说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行。

访问对象时要使用这种形式而不使用 On Error GoTo。

  comISP.PortOpen = True  If Err.Number <> 8002 Then '无效的串口号。

这样可以检测到虚拟串口,如果用Err.Number = 0的话检测不到虚拟串口  If j = 0 Then  j = i  End If  cboPort.AddItem COM & i '生成串口选择列表  End If  comISP.PortOpen = False  Next i  If j >= 1 Then  cboPort.Text = COM & j '自动打开可用的最小串口号  comISP.CommPort = j  comISP.PortOpen = True  cmdOpenCom.Caption = 关闭串口  shpCOM.FillColor = vbGreen  If Err.Number = 8005 Then '串口已打开,vbExclamation '  comISP.PortOpen = False  cboPort.Text =   cmdOpenCom.Caption = 打开串口  shpCOM.FillColor = vbRed  End If  End If

怎样在vb中自动检测到可用串口号的具体程序代码

j = 0  For i = 1 To 16 Step 1  If comISP.PortOpen = True Then '先关口  comISP.PortOpen = False  End If  comISP.CommPort = i  On Error Resume Next '说一个运行时错误发生时,控件转到紧接生错误的语句之后的语句,并在此继续运行。

访问对象时要使用这种形式而不使用 On Error GoTo。

  comISP.PortOpen = True  If Err.Number <> 8002 Then '无效的串口号。

这样可以检测到虚拟串口,如果用Err.Number = 0的话检测不到虚拟串口  If j = 0 Then  j = i  End If  cboPort.AddItem COM & i '生成串口选择列表  End If  comISP.PortOpen = False  Next i  If j >= 1 Then  cboPort.Text = COM & j '自动打开可用的最小串口号  comISP.CommPort = j  comISP.PortOpen = True  cmdOpenCom.Caption = 关闭串口  shpCOM.FillColor = vbGreen  If Err.Number = 8005 Then '串口已打开,vbExclamation '  comISP.PortOpen = False  cboPort.Text =   cmdOpenCom.Caption = 打开串口  shpCOM.FillColor = vbRed  End If  End If

两台电脑vb串口通讯

楼上已经说的非常正确,当你使用OnComm事件来接收,必须使MsComm控件的属性RThreshold为大于0的整数,否则不产生OnComm事件.Private Sub Form_Load() MSComm.CommPort = 1 MSComm1.RThreshold = 1 MSComm.PortOpen = True MSComm.Settings = 9600,n,8,1 MSComm.InputMode = comInputModeBinary MSComm.InBufferCount = 0 End Sub

请问VB中接入串口,要对电脑进行什麽设置吗

LZ的代码缺少InitialPort子程序,且窗体上要有5个name为CboSerialPort.,CboBaud,CboParity,CboData,CboStop等ComboBox 控件。

参考:

用外接的摄像头通过串口连接电脑怎么样才能在VB界面上显示

1.您在开始的赋值语句中设置了i=N,就设置为N的地址,说明编制的没有问题;2.把您的整个过程放到一个循环中就可以了啊。

do while 退出条件(防止锁死,并在关闭窗口时关闭COM口,以免下次不能打开) for i=1 to 7 您的编程本体 Timer1.Enabled = True caiji = TrueEnd SubPrivate Sub MSComm1_OnComm() Dim cmdin() As Byte '接收数据字节变量 Dim Index As Integer MSComm1.InputLen = 0 Select Case MSComm1.CommEventCase comEvReceive '接收事件 If MSComm1.InBufferCount = 10 Thencmdin = MSComm1.Input If i = 1 Then Label1(0).Caption = TwoBytes(cmdin(0), cmdin(1)) Label1(1).Caption = TwoBytes(cmdin(2), cmdin(3)) ElseIf i = 3 Then Label1(2).Caption = TwoBytes(cmdin(0), cmdin(1)) ElseIf i = 4 Then Label1(3).Caption = TwoBytes(cmdin(0), cmdin(1)) ElseIf i = 5 Then MSComm1.Output = cmdout Label1(4).Caption = TwoBytes(cmdin(0), cmdin(1)) Label2(0).Caption = TwoBytes(cmdin(2), cmdin(3)) ElseIf i = 6 Then MSComm1.Output = cmdout Label1(5).Caption = TwoBytes(cmdin(0), cmdin(1)) Label2(1).Caption = TwoBytes(cmdin(2), cmdin(3)) End If End If End Select next iloop

声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。联系xxxxxxxx.com

Copyright©2020 一句话经典语录 www.yiyyy.com 版权所有

友情链接

心理测试 图片大全 壁纸图片