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

vb串口号扫描

时间:2018-11-13 16:29

怎样在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 怎么实现串口端口的扫描

循环打开串口,如果发生错误,则串口不存在。

串口正在使用与不存在串口会返回不同的错误号,可以利用这一点来判断串口是否存在。

如何利用VB自动扫描串口,并显示采集信息

我用过扫描枪的输用的com输入,在VB里添加MSComm控件即可。

备管理器里识别为com几就选com扫描的时候,MSComm控件有comEvReceive事件,可以作为触发事件的,比如控件名是MSComm1那这个MSComm1_OnComm()里,如果有这个触发事件,就可以声明一个字符型来接受MSComm1.input这个输入可能根据不同扫描枪不同要进行些处理以得到你需要的条码实值当然条码枪具体给你什么你可以去Windows自带的Hyper Terminal里看到有个了这个条码值,在你图里对应的第二个表里其他的Textbox或者label控件就可以写相应的Caption了,无非是if,case判断了不加数据库连接的话就没那么复杂了空口说白话也不行,以下是基于Motolora Symbol P370\\\/470型对条码值的一些处理,直接写在OnComm里了,process_no就是看到这个号码做相应处理的判断,可以另起炉灶写一个到时候调用就是Private Sub MSComm1_OnComm()Dim st As StringIf MSComm1.CommEvent = comEvReceive Then st = MSComm1.Input If st <> Chr(3) Then st_all = st_all + st Else Txt_Pt.Text = Trim(Mid(st_all, InStr(st_all, Chr(2)) + 1, 10)) st_all = Process_no End IfEnd IfEnd Sub以上只是com接收事件和取值的例子,判断不必参考的,关键无非是把接收值读入st,再对st_all这个全局变量赋值(不然你一会用那个条码值可没有个地方记录了)非com输入恕在下暂时无能为力

有个串口的条纹码扫描器,用VB做界面,建立ACCESS做数据库, 不用文本框作为输入,

条码扫描器其实原理就跟键盘一样的,所以如果不想用文本框来接收条码信息,你可以在窗体的keyPress事件中用一个全局变量记录每个字符,在接收到回车键后(多数条码扫描器会自动发送回车键的,可设置)就把接收到的条码信息保存到数据库或回显到指定的文本框,然后清空变量继续等待接收下一个条码信息。

当然,这里有个问题,就是通过真实键盘敲入的字符也会被接收的,这就造成了干扰。

可以在扫描期间用API函数屏蔽真实键盘来解决这个问题,这里就不多说了。

补充一点,窗体的KeyPreview属性要设为True,否则窗体的KeyPress事件会无法响应的。

VB 中mscomm串口控件的使用。

你这种情况, 很明显是端口被某程序占用了, 如果你的电脑没有什么特殊的程式或现在有的连接,那通常是你目前程式并没有完全结束,同任务管理器看看. 建议先做好端口扫描, 然后依据逐个端口测试未使用..写这种程序楼主一定要注意下面几点即可, 特别是当你对整个数据流向不是很清楚的情况下:1:异常处理, 特别是连接端口前, 端口的状态判定.2:超时异常一定要设置好.3:程序关闭或异常时一定加入端口状态设定4:另外程序设定为仅能开启一个实例. (主要是为了防止多开导致端口占用)异常的回显信息设定一定要明确,这个时候出错你才知道怎么回事. 单单依靠系统错误很多时候是不明所以然的.以前我写这类控制程序,60%以上代码都是在做过程异常处理, 端口检测之类的.

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

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

友情链接

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