我正在尝试在 Ubuntu 中使用 Mag Stripe 阅读器读取 RS232 串行端口。我有一个 USB 工作正常(ID-Tech)。但我正试图让 Neuron 阅读器也能正常工作。我一般不熟悉串行端口通信,但是使用节点串行我编写了一个简单的应用程序,它可以等待设备:
node tester.js /dev/ttyS0
然后从读卡器吐出输出。与 USB ID-Tech 阅读器配合使用非常好,但是当我插入串行端口设备时,我什么也得不到。我也有点不确定如何判断它正在使用哪个串行端口。有没有更好的工具来“探测” Ubuntu 中的串行端口并找出 Mag Reader 正在使用哪个串行端口?
更新
围绕它进行研究似乎使用的工具是:
sudo cat /dev/ttyS0
我遇到的问题是设备连接到哪个端口,在 ttyS0,1,2,3 上执行上述操作无济于事,应该从设备中转储一些输出。但是我不确定这是否需要先运行:
sudo inputattach -dump /dev/ttyS0
这只是挂在光标上,我想尝试为读卡器输入键盘类型,但同样的问题只是挂起。dmesg 的输出 | grep ttyS 显示端口启用:
[ 1.906700] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 1.927250] serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
[ 1.947758] serial8250: ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
[ 1.968273] serial8250: ttyS3 at I/O 0x2e8 (irq = 3) is a 16550A
[ 1.990199] 00:04: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 2.010770] 00:05: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
[ 2.031335] 00:06: ttyS2 at I/O 0x3e8 (irq = 5) is a 16550A
[ 2.051952] 00:07: ttyS3 at I/O 0x2e8 (irq = 11) is a 16550A