首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在visual basic .net中使用HID条形码扫描器

在visual basic .net中使用HID条形码扫描器
EN

Stack Overflow用户
提问于 2019-10-16 10:17:20
回答 2查看 102关注 0票数 0

我使用的是visual basic 2019,我需要使用条形码扫描器作为HID设备,而不是键盘按钮。是否有像RS-232串口控件这样的表单控件,我可以将其添加到表单中,并在事件处理例程中放置代码来处理接收到的数据?

EN

回答 2

Stack Overflow用户

发布于 2019-10-16 10:39:22

我不是这个领域的专家,但我确实找到了一些对您有帮助的类:

Windows.Devices.HumanInterfaceDevice.HidDevice

System.IO.Ports.SerialPort

msdn页面上有说明和示例。您应该能够创建这些类之一的实例,并使用它与您的硬件通信。

票数 0
EN

Stack Overflow用户

发布于 2019-10-16 10:46:29

您可以在工具箱中找到一个SerialPort控件。您还需要在表单中包含Imports System.IO.Ports

然后,只需使用如下调用配置端口:

代码语言:javascript
复制
    SerialPortScanner.BaudRate = "19200"
    SerialPortScanner.ReadTimeout = 5000
    SerialPortScanner.DataBits = 8
    SerialPortScanner.Parity = Parity.None
    SerialPortScanner.Open()
    SerialPortScanner.DiscardOutBuffer()    'start fresh
    SerialPortScanner.DiscardInBuffer()

最后,您可以使用类似于以下内容的方式读取字节:

代码语言:javascript
复制
    CharBuff = SerialPortHCT.ReadByte()

当然,您需要在读取字节时循环,并知道何时停止(假设您必须将它们作为字节读取,并且不能拥有发送分隔字符串的扫描器。

棘手的部分是,如果您必须使用不可打印的字符控制扫描仪。我通过创建一些常量来做到这一点:

代码语言:javascript
复制
    Const ACK As Byte = 6   ' ACKnowledge ASCII Code

然后,您可以像这样写出字节:

代码语言:javascript
复制
    SerialPortScanner.Write({ACK}, 0, 1) ' Send ACK byte

还有其他的设置和控制,但这是最基本的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58404857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档