社区
驱动开发/核心开发
帖子详情
如何编写USB鼠标的驱动?
woshiflek
2007-01-28 10:40:13
小弟是虾米。近日想要改装一个鼠标,加入一个其他功能。但不知这一块儿该怎么做?有没有什么捷径,譬如什么芯片之类的,可以直接实现USB协议。请各位大侠指点。
...全文
838
3
打赏
收藏
如何编写USB鼠标的驱动?
小弟是虾米。近日想要改装一个鼠标,加入一个其他功能。但不知这一块儿该怎么做?有没有什么捷径,譬如什么芯片之类的,可以直接实现USB协议。请各位大侠指点。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
DISINHUI
2009-09-10
打赏
举报
回复
改装,你要看一下你的现有鼠标使用的芯片型号。比较常见的有 HT82M99E,EM78M611等芯片,一般都是台湾的芯片。但是如果是可以MTP的话,就可以重新写代码,重新烧录即可,厂商都免费提供demo代码。
xywss
2007-01-29
打赏
举报
回复
楼主说的可是多功能USB鼠标,这种产品曾经用义隆的USB IC: EM78M612/EM78M611做过.
*************************************************
义隆 USB IC
<1>可多次烧录
<2>低速 IC,传输速率1.5MBit/S
EM78M612: 16PIN,18PIN,20PIN,24PIN,112 BYTE RAM,2K ROM带有A/D,EEPROM,PWM功能,有EP0和EP1两个端点。
EM78M611: 20PIN,24PIN,40PIN,44PIN(QFP),114BYTE RAM ,6K ROM,A/D,EEPROM, PWM功能,有EP0,EP1,EP2三个端点。
<3>全速 IC:传输速率12MBit/S
EM78M680: 20PIN,24PIN,40PIN,40PIN(QFP),271 BYTE RAM ,6K ROM,A/D,EEPROM, PWM功能,有5个端点。
主要应用于:
1: USB和RS232/并口/PS2的转换
2: USB 密码锁/小U盘
3: USB无线激光鼠标笔发射/接收
4: USB 无线鼠标、键盘
5: 电脑多媒体软件遥控器/接收器
6: USB摇杆/玩具飞机模拟遥控器
7: USB SKYPE电话
8: USB网络彩灯
9: USB按摩器/计步器
10:USB网卡/USB声卡/USB喇叭
11: 运动器材与电脑通信设备
12:U盘,读卡器等数据速度传输要求比较快的产品
我司是台湾义隆单片机的一级代理商,集销售和开发于一体,
我USB部门拥有多位经验丰富的USB硬件开发工程师和电脑端USB驱动,
应用程序软件开发工程师,在短周期内能完成客户的各种方案,
同时给客户提供最大的技术支持。
欢迎大家来电洽谈!
**********************************
深圳广硕电子 USB开发部
联系人:吴先生
TEL:0755-83762428
EMAIL:HLXYWSS@163.COM
ADDRESS:深圳市福田区华强北路赛格科技园4栋中12D
**********************************
FirerFirerFirer
2007-01-29
打赏
举报
回复
Cypress cy7c63723, Cypress 提供現成的方案和原代碼
圈圈教你玩
USB
/* 也是从其他地方搞过来的,花了不少积分,我就1分奉献了吧,绝对是好书~ */ 第1章
USB
概述及协议基础 1.1
USB
是什么 1.2
USB
的特点 1.3
USB
的拓扑结构 1.4
USB
的电气特性 1.5
USB
的线缆、插头及插座 1.6
USB
的插入检测机制 1.7
USB
的描述符及其之间的关系 1.8
USB
设备的枚举过程 1.9
USB
的包结构及传输过程 1.9.1
USB
的包结构及包的分类 1.9.2令牌包 1.9.3数据包 1.9.4握手包 1.9.5特殊包 1.9.6如何处理数据包 1.10
USB
的四种传输类型 1.10.1
USB
事务 1.10.2批量传输 1.10.3中断传输 1.10.4等时传输 1.10.5控制传输 1.10.6端点类型与传输类型的关系 1.10.7传输类型与端点支持的最大包长 1.11本章小结 第2章硬件系统设计 2.1方案及芯片的选定 2.2D12引脚功能说明 2.3D12与AT89S52的连接 2.4串口部分电路 2.5按键部分 2.6指示灯部分 2.7IDE接口部分 2.8单片机部分 2.9元件安装 2.10电路调试 2.11测试程序的
编写
和调试 2.11.1建立一个工程 2.11.2为工程添加源文件 2.11.3KEIL工具栏及仿真介绍 2.11.4按键
驱动
的
编写
2.11.5串口
驱动
的
编写
2.11.6PDI
USB
Dl2读写函数及读ID的实现 2.12本章小结 第3章
USB
鼠标
的实现 3.1
USB
鼠标
工程的建立 3.2
USB
的断开与连接 3.3
USB
中断的处理 3.4读取从主机发送到端点O的数据 3.5
USB
标准请求 3.5.1
USB
标准设备请求的结构 3.5.2GET_DESCRIPTOR请求 3.5.3SET_ADDRESS请求 3.5.4SETCONFIGURATION请求 3.6设备描述符的实现 3.7设备描述符的返回 3.8设置地址请求的处理 3.9配置描述符集合的结构 3.9.1配置描述符的结构 3.9.2接口描述符的结构 3.9.3端点描述符的结构 3.9.4HID描述符的结构 3.10配置描述符集合的实现以及返回 3.11字符串及语言ID请求的实现 3.12设置配置请求的实现 3.13报告描述符的结构及实现 3.14报告的返回 3.15BusHound工具的简介 3.16本章小结 第4章
USB
键盘的实现 4.1
USB
键盘工程的建立 4.2设备描述符的实现 4.3配置描述符集合的实现 4.3.1配置描述符 4.3.2接口描述符 4.3.3HID描述符_ 4.3.4端点描述符 4.4字符串描述符 4.5报告描述符 4.6输入和输出报告的实现 4.7
USB
键盘实例的测试 4.8再谈
USB
HID的报告描述符 4.9带
鼠标
功能的
USB
键盘(方法一) 4.10带
鼠标
功能的
USB
键盘(方法二) 4.11多媒体
USB
键盘 4.12本章小结 第5章用户自定义的
USB
HID备 5.1My
Usb
Hid工程的建立 5.2描述符的修改 5.3报告的实现 5.4对用户自定义的
USB
HID设备的访问 5.5访问HID设备时所用到的相关函数 5.5.1 获取HID设备的接口类GUID的函数 5.5.2获取指定类的所有设备信息集合的函数 5.5.3从设备信息集合中获取一个设备接口信息的函数 5.5.4获取指定设备接口详细信息的函数 5.5.5打开设备的函数 5.5.6获取HID设备属性的函数 5.5.7从设备读取数据的函数 5.5.8往设备写数据的函数 5.5.9通过控制端点O读取报告的函数 5.5.10通过控制端点O发送报告的函数 5.5.11关闭句柄的函数 5.5.12需要包含的库文件 5.6访问
USB
HID设备的上位机软件的实现 5.6.1上位机程序
编写
的思路 5.6.2查找及打开HID设备的代码 5.6.3读输入报告线程的代码 5.6.4写输出报告的代码(发送LED的状态) 5.6.5写输出报告线程的代码 5.6.6线程的创建以及设备插拔事件的注册 5.6.7对设备状态改变事件的处理 5.7软件界面以及使用方法 5.8本章小结 第6章
USB
转串口 6.1串口家族历史 6.2串口接头的引脚分布及功能 6.3
USB
转串口的实现方法 6.4设备描述符 6.5字符串描述符 …… 第7章
USB
MIDI键盘 第8章U盘 第9章自定义
USB
设备及
驱动
开发 第10章
USB
过滤
驱动
开发 附录第3章实例的完整调试信息 参考文献 后记 ……
编写
USB
鼠标
驱动
程序,并测试
转载自: 8.1
编写
USB
鼠标
驱动
程序,并测试 学习目标:
编写
USB
鼠标
驱动
程序,并测试(将
USB
鼠标
的左键当作L按键,将
USB
鼠标
的右键当作S按键,中键当作回车按键). 一、怎么写
USB
设备
驱动
程序?步骤如下: 1. 首先先定义全局变量
usb
_driver结构体,并在入口函数中通过
usb
_register()函数进行注册; 2. 分别写
usb
_driver结构体的成员函数:my
usb
_mouseprobe、my
usb
_mousedisconnect、my
usb
_mouseid_table
编写
USB
鼠标
驱动
程序
第2个参数是"struct
usb
_device_id *"类型,它是
usb
_driver的id_table中的某项,表示第1个参数就是跟这个
usb
_device_id匹配的。在这样一个速食的时代,坚持做自己,慢下来,潜心琢磨,心怀敬畏,领悟知识,才能向下扎到根,向上捅破天,背着世界往前行!使用
鼠标
模拟按键:左键相当于"L"、右键相当于"S"、"中键"相当于 “回车”。
十五、Linux
驱动
之
USB
鼠标
驱动
1. 如何
编写
USB
鼠标
驱动
结合十四、Linux
驱动
之
USB
驱动
分析中的分析,我们开始写一个
USB
鼠标
驱动
。
USB
的
驱动
可以分为3类:SoC的
USB
控制器的
驱动
,主机端
USB
设备的
驱动
,设备上的
USB
Gadget
驱动
,通常,对于
USB
这种标准化的设备,内核已经将主机控制器的
驱动
编写
好了,设备上的Gadget
驱动
通常只运行固件程序而不是基于Linux, 所以
驱动
工程师的主要...
USB
鼠标
驱动
开发流程
USB
鼠标
驱动
驱动开发/核心开发
21,597
社区成员
21,709
社区内容
发帖
与我相关
我的任务
驱动开发/核心开发
硬件/嵌入开发 驱动开发/核心开发
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章