我应该使用什么开发工具来读取嵌入式 Linux 系统中的 USB 键盘?
我已经编译了内核以支持 USB HID 和键盘设备。当我插入 USB 键盘时,内核会识别它,并在我按下同一键时锁定/解锁 NUMLOCK LED。
是否可以创建一个 dev
文件条目,以便我可以从 USB 键盘读取 (cat /dev/input/...
) 数据?
我很高兴我可能正在查看扫描代码。
我用鼠标测试了 USB HID,虽然它在控制台上产生垃圾,但我知道它是使用我找到的信息连接的 此处。
EDIT-Ignacio
如何将以下内容映射到 dev
条目,特别是在哪里收集次要修订号?
# cat /proc/bus/input/devices
I: Bus=0003 Vendor=046d Product=c316 Version=2800
N: Name="Logitech Logitech USB Keyboard"
P: Phys=usb-at91rm9200-1.1/input0
H: Handlers=kbd
B: EV=120003
B: KEY=10000 7 ff800000 7ff febeffdf ffefffff ffffffff fffffffe
B: LED=1f
I: Bus=0003 Vendor=046d Product=c316 Version=2800
N: Name="Logitech Logitech USB Keyboard"
P: Phys=usb-at91rm9200-1.1/input1
H: Handlers=kbd
B: EV=3
B: KEY=9f01 400 40000 401878 d800d508 1e0000 0 0 0
I've compiled the kernel to support USB HID and keyboard devices. When I plug in the USB keyboard, the kernel recognizes it, and goes so far as to latch/unlatch the NUMLOCK led when I press the same key.
Is there a dev
file entry I can create so I can read (cat /dev/input/...
) data from the USB keyboard?
I appreciate that I might be looking at scanning codes.
I tested the USB HID with a mouse, although it produces garbage on the console, I know it's connected using information I found here.
EDIT-Ignacio
How can I map the following to a dev
entry, specifically where do I glean the minor revision number?
# cat /proc/bus/input/devices
I: Bus=0003 Vendor=046d Product=c316 Version=2800
N: Name="Logitech Logitech USB Keyboard"
P: Phys=usb-at91rm9200-1.1/input0
H: Handlers=kbd
B: EV=120003
B: KEY=10000 7 ff800000 7ff febeffdf ffefffff ffffffff fffffffe
B: LED=1f
I: Bus=0003 Vendor=046d Product=c316 Version=2800
N: Name="Logitech Logitech USB Keyboard"
P: Phys=usb-at91rm9200-1.1/input1
H: Handlers=kbd
B: EV=3
B: KEY=9f01 400 40000 401878 d800d508 1e0000 0 0 0
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一旦您扫描了
/proc/bus/input/devices
来查找适当的事件设备,您就可以使用MAKEDEV
来创建它(字符,主设备号 13,次设备号 64+) )并照常访问。Once you've scanned
/proc/bus/input/devices
for the appropriate event device you can useMAKEDEV
to create it (character, major number 13, minor number 64+) and access it as usual.