我使用的是visual basic 2019,我需要使用条形码扫描器作为HID设备,而不是键盘按钮。是否有像RS-232串口控件这样的表单控件,我可以将其添加到表单中,并在事件处理例程中放置代码来处理接收到的数据?
发布于 2019-10-16 10:39:22
我不是这个领域的专家,但我确实找到了一些对您有帮助的类:
Windows.Devices.HumanInterfaceDevice.HidDevice
和
msdn页面上有说明和示例。您应该能够创建这些类之一的实例,并使用它与您的硬件通信。
发布于 2019-10-16 10:46:29
您可以在工具箱中找到一个SerialPort控件。您还需要在表单中包含Imports System.IO.Ports。
然后,只需使用如下调用配置端口:
SerialPortScanner.BaudRate = "19200"
SerialPortScanner.ReadTimeout = 5000
SerialPortScanner.DataBits = 8
SerialPortScanner.Parity = Parity.None
SerialPortScanner.Open()
SerialPortScanner.DiscardOutBuffer() 'start fresh
SerialPortScanner.DiscardInBuffer()最后,您可以使用类似于以下内容的方式读取字节:
CharBuff = SerialPortHCT.ReadByte()当然,您需要在读取字节时循环,并知道何时停止(假设您必须将它们作为字节读取,并且不能拥有发送分隔字符串的扫描器。
棘手的部分是,如果您必须使用不可打印的字符控制扫描仪。我通过创建一些常量来做到这一点:
Const ACK As Byte = 6 ' ACKnowledge ASCII Code然后,您可以像这样写出字节:
SerialPortScanner.Write({ACK}, 0, 1) ' Send ACK byte还有其他的设置和控制,但这是最基本的。
https://stackoverflow.com/questions/58404857
复制相似问题