原理简单阐述:
usb 设备主要涉及配置-》接口-》端点,基本上是包含关系,usb设备主要使用接口提供的配置信息,可以当做操作的逻辑设备和传输通道,传输数据采用urb结构。
如何测试:
1. make menuconfig去掉原来的USB鼠标驱动
-> Device Drivers
-> HID Devices
<> USB Human Interface Device (full HID) support
2. make uImage 并使用新的内核启动
3. insmod usbmouse_as_key.ko
4. 在开发板上接入、拔出USB鼠标
调试出现的问题:
1. 启动系统在插上usb时,就弹出
usb 1-1: USB disconnect, address 2
usb 1-1: new low speed USB device using s3c2410-ohci and address 3
usb 1-1: configuration #1 chosen from 1 choice
usb 1-1: USB disconnect, address 3
usb 1-1: new low speed USB device using s3c2410-ohci and address 4
usb 1-1: conf

本文介绍了USB设备驱动的基本概念,特别是USB鼠标驱动的实现过程。在测试阶段,通过修改内核配置、加载模块进行设备交互。调试过程中遇到设备断开连接、oops错误等问题,通过代码调整解决了这些问题。最终确定正确的数据传输方向和端点配置,使得鼠标能正常工作。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



