Usb 条形码扫描仪解码

Usb 条形码扫描仪解码,usb,barcode,barcode-scanner,labview,code128,Usb,Barcode,Barcode Scanner,Labview,Code128,我在解码一维中文条形码阅读器的输出时遇到一些问题。读卡器使用USB接口,并作为键盘HID设备连接(我没有问题)。在将设备与Labview连接并生成inf驱动程序文件后,我尝试从配置手册“000200”中的测试条形码读取设备中断数据,设备的输出以串行方式发送,如下所示“39 39 40” 我猜40是转义字符,39是0,31是2。 在做了一些研究之后,我找不到这种编码的相关密钥代码表。我尝试过使用配置手册禁用所有其他编码格式(39,完整ascii,int 2到5..) 该模块能够读取大写字母,并发送

我在解码一维中文条形码阅读器的输出时遇到一些问题。读卡器使用USB接口,并作为键盘HID设备连接(我没有问题)。在将设备与Labview连接并生成inf驱动程序文件后,我尝试从配置手册“000200”中的测试条形码读取设备中断数据,设备的输出以串行方式发送,如下所示“39 39 40”

我猜40是转义字符,39是0,31是2。 在做了一些研究之后,我找不到这种编码的相关密钥代码表。我尝试过使用配置手册禁用所有其他编码格式(39,完整ascii,int 2到5..)

该模块能够读取大写字母,并发送一个附加字符,说明它是大写字母

禁用代码128后,设备停止读取条形码。我重新启用了此选项,阅读成功。但是,代码128表将“G”分配给39输出,而不是0,这会导致读数混乱

有人使用以下格式吗?如果是,它是哪个关键代码?还是应该手动映射角色集

以下是购买模块的链接:

谢谢,非常感谢

根据,USB HID设备发送USB使用代码,而不是ASCII字符代码。这个答案链接到上的冗长的官方文档,但来自microsoft.com的文档似乎是一个简明的摘要。如果这些链接将来断开,那么在web上搜索
usb hid密钥代码
或类似代码应该会找到一个等价的链接

查看Microsoft文档上的
HID Usage ID
列,“0”的十六进制代码是
27
,十进制代码是392'是
1F
是31,40位小数是
28
十六进制,对应于返回。这将与您看到的输出一致,假设您将其报告为十进制值序列。正如您所观察到的,一个大写字母作为两个代码发送,其中第一个可能对应于HID用法表中的“shift”键


您可以尝试搜索或询问LabVIEW VI,以将这些代码转换为ASCII字符,但基于上面链接的表构建自己的代码可能会更快。要测试它,您可以使用条形码生成器程序或网页为您想要解码的所有字符创建条形码,并检查用您的设备扫描它们是否能提供正确的输出。

太好了!感谢您的澄清,非常感谢我认为输出是条形码密钥代码表示,而不是USB HID表示(与ASCII不同)