![从使用 lsusb 列出的 USB 设备获取输入](https://linux22.com/image/18544/%E4%BB%8E%E4%BD%BF%E7%94%A8%20lsusb%20%E5%88%97%E5%87%BA%E7%9A%84%20USB%20%E8%AE%BE%E5%A4%87%E8%8E%B7%E5%8F%96%E8%BE%93%E5%85%A5.png)
我有一个 CF-1KB 条形码阅读器,连接到 RS232 到 PS/2 适配器和 PS/2 到 USB 适配器。我不确定该设备是如何工作的,因此我试图通过查看从该设备获取的信息来弄清楚它。
当连接到我的计算机时,它会给我
[ 3673.610054] usb 4-1: new low speed USB device using uhci_hcd and address 3
[ 3673.900448] input: Generic USB K/B as /devices/pci0000:00/0000:00:1a.1/usb4/4-1/4-1:1.0/input/input16
[ 3673.900746] generic-usb 0003:13BA:0017.0003: input,hidraw0: USB HID v1.10 Keyboard [Generic USB K/B] on usb-0000:00:1a.1-1/input0
[ 3673.916733] input: Generic USB K/B as /devices/pci0000:00/0000:00:1a.1/usb4/4-1/4-1:1.1/input/input17
[ 3673.916890] generic-usb 0003:13BA:0017.0004: input,hidraw1: USB HID v1.10 Mouse [Generic USB K/B] on usb-0000:00:1a.1-1/input1
sudo cat /dev/hidraw0
每次我扫描某些内容时,和的输出sudo cat /dev/hidraw1
都会给我带来不可重现的乱码,或者根本什么都不给我。
我在哪里可以找到设备中的有用数据?
答案1
串行转 PS2 适配器可能不适合这里,并且可能是问题的根源。该适配器不进行任何转换。它所使用的鼠标类型知道如何通过串行端口和 PS2 端口进行通信,并且适配器只是在物理上适应连接器。
您的条形码扫描仪可能不知道如何读取 PS2。接下来您应该做的是将其连接到串行端口并尝试一堆不同的字符串,从 2400 或 9600 波特率以及 8N1 或 7E1 编码开始。当您每次扫描同一个条形码时都获得一致的图案时,您就知道自己发现了一些东西。
答案2
条码扫描仪的一种非常常见的工作方式是伪装成键盘并只需输入条码。 PS2 适配器是否随条形码读取器一起提供?如果是这样,那么我会怀疑读者只是冒充键盘。