欢迎来到一句话经典语录网
我要投稿 投诉建议
当前位置:一句话经典语录 > 口号 > vb自动识别串口号

vb自动识别串口号

时间:2018-05-04 07:44

怎样在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

怎样串口通信协议自动识别

单工的通信实现对串口通信协议的自动识别比较难做,说实话,,搞到这个题目算你倒霉一般采用的是无脑对比法,就是接受一次对比一次协议,直到找到合适的信号说实话,很麻烦编程方面推荐C语言,汇编在实现对比的时候,容易导致死循环,而且C语言编这个程序并不是很难

怎样用VB来判断串口是否存在,是否被占用

是否有数据输入

错误消息(MS Comm 控件)下表列出 MSComm 控件可以捕获的错误:常数 值 描述 comInvalidPropertyValue 380 无效属性值 comSetNotSupported 383 属性为只读 comGetNotSupported 394 属性为只读 comPortOpen 8000 端口打开时操作不合法 8001 超时值必须大于 0 comPortInvalid 8002 无效端口号 8003 属性只在运行时有效 8004 属性在运行时为只读 comPortAlreadyOpen 8005 端口已经打开 8006 设备标识符无效或不支持该标识符 8007 不支持设备的波特率 8008 指定的字节大小无效 8009 缺省参数错误 8010 硬件不可用(被其它设备锁定) 8011 函数不能分配队列 comNoOpen 8012 设备没有打开 8013 设备已经打开 8014 不能使用 comm 通知 comSetCommStateFailed 8015 不能设置 comm 状态 8016 不能设置 comm 事件屏蔽 comPortNotOpen 8018 仅当端口打开时操作才有效 8019 设备忙 comReadError 8020 读 comm 设备错误 comDCBError 8021 为该端口检索设备控制块时的内部错误

VB.NET中如何处理串口通信接收的数据

你可以预先约定一个截止附,读取的字节统统放到缓存区里,直到读到截止附再处理、显示。

vb程序编写模拟串口

串口通讯只是管道,要控制小车的速度什么的,最好的实现方式是用FPGA,或者相应的asic芯片。

一个较为普遍的方式是控制电机的电压来控制运动速度,难度一点都不大。

多个传感器采集的数据发送到单片机,也没有关系,最好的方式是在单片机上烧制出一系列的寄存器空间,memory map,然后,通过串口通讯控制时,可以通过读写MMIO来实现控制。

不用为每一个传感器配置一个端口。

很多专属芯片都带例程,改改就可以用了。

高手来帮帮忙啊

vb的串口通信

参考: 补充答复:已经在上述链接的23楼上传修改后工程.LZ:你需要对COM号,波特率,校验位,数据位,停止位做选择,都出现蓝色高亮.此外修改上述链接工程中代码的BUG:Private Sub cmdOpen_Click() '打开关闭端口 On Error GoTo Userr If List1 <> And List2 <> And List3 <> And List3 <> And List3 <> Then MSComm1.Settings = List2 & , & List3 & , & List5 & , & List4 If openFlag Then cmdOpen.Caption = 打开串口 MSComm1.PortOpen = False '打开端口 Shape1.FillColor = vbRed Else MSComm1.CommPort = Val(List1) MSComm1.PortOpen = True cmdOpen.Caption = 关闭串口 Shape1.FillColor = vbGreen End If End If openFlag = Not openFlag Exit SubUserr: MsgBox (Err号 & Err.Number & 串口号错误或已打开!)End Sub

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

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

友情链接

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