摘要: 1. 首先搞清楚,鼠标点左键、右键等能得到什么数据,然后分析这些数据上报事件即可。 第一个基本点:usb_alloc_urb函数,创建一个struct urb结构体,只能使用这个函数来创建,它是urb在usb世界里的独家代理。 第二个基本点:usb_fill_control_urb函数,初始化一个控 阅读全文
posted @ 2018-07-14 21:25 一条水煮鱼 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 1 /*参考/drivers/hid/usbhid/usbmouse.c*/ 2 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 10 static struct urb *mouse_urb; 11 static int len; 12 static... 阅读全文
posted @ 2018-07-14 21:21 一条水煮鱼 阅读(636) 评论(0) 推荐(0) 编辑
摘要: 以下是打印鼠标左右键及其他输入的源代码,详细说明见https://www.cnblogs.com/zhu-g5may/p/9309381.html 阅读全文
posted @ 2018-07-14 15:06 一条水煮鱼 阅读(643) 评论(0) 推荐(0) 编辑
摘要: 1. 定义usb支持的设备类型: 当插入的USB设备为该类型的USB时,内核就会调用probe函数。注意要把这个数组写进设备表里面: 2. probe函数 2.1 从接口获得设备,然后打印设备信息: 2.2 在此之前定义结构体: 3. 将结构体注册进内核: 3.1使用一句话: 3.2 当然也可以使用 阅读全文
posted @ 2018-07-14 13:36 一条水煮鱼 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 源码附带注释: key_dev.c key_drv.c 阅读全文
posted @ 2018-07-14 10:49 一条水煮鱼 阅读(354) 评论(0) 推荐(0) 编辑