原创
自制USB鼠标来玩玩~~~~(源代码+原理图)
花了一个晚上,把USB键盘的程序改了改,就成了USB鼠标了~~~~~~
只是修改了一下报告描述符,以及返回数据等,修改很少。
以下是通过串口返回的调试信息:
系统启动................................
断开USB连接........................
USBD12芯片初始化
设置地址.....................
地址为: 0
连接USB...............
USB总线复位................................
USB总线挂起................................
USB总线复位................................
USB总线挂起................................
USB总线复位................................
USB标准请求................................
获取描述符................................
获取设备描述符................................
USB总线复位................................
USB标准请求................................
设置地址.....................
地址为: 2
USB标准请求................................
获取描述符................................
获取设备描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
获取配置描述符................................
USB标准请求................................
获取描述符................................
获取字符串描述符................................
获取语言ID................................
USB标准请求................................
获取描述符................................
获取字符串描述符................................
获取设备序列号................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
获取配置描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
获取字符串描述符................................
获取语言ID................................
USB标准请求................................
获取描述符................................
获取字符串描述符................................
获取产品字符串................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
获取字符串描述符................................
获取语言ID................................
USB标准请求................................
获取描述符................................
获取字符串描述符................................
获取产品字符串................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
获取设备描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
获取配置描述符................................
USB标准请求................................
获取描述符................................
获取配置描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
获取描述符................................
USB标准请求................................
设置配置................................
USB类请求................................
设置空闲................................
USB标准请求................................
获取描述符(从接口)..............................
获取报告描述符................................
USB标准请求................................
获取描述符(从接口)..............................
USB标准请求................................
获取描述符(从接口)..............................
USB标准请求................................
获取描述符(从接口)..............................
USB标准请求................................
获取描述符(从接口)..............................
USB标准请求................................
获取描述符(从接口)..............................
USB标准请求................................
获取描述符(从接口)..............................
USB标准请求................................
获取描述符(从接口)..............................
在设备管理器里的显示:
原理图(用的是键盘的硬件,8键鼠标上移,4键鼠标左移,6键鼠标右移,2键鼠标下移,
9键往上滚动,3键往下滚动,alt键鼠标左键,0键鼠标中键,enter键鼠标右键):
(注意:原理图上所标的晶体值是以前的,这个程序中使用的是22.1184M的晶体.它关系到串口波特率,如果你不使用串口,那么可以不用理会它.)
注意:图中串口电平转换部分的C8和C10接反了,C11负端应接VDD。D12的SUSPEND(12脚)应该接地。USB接头处的D+和D-应该分别串联22欧姆的匹配电阻。由于图得比较匆忙,所以没留意。
computer00 2008-9-20 20:09
computer00 2008-8-22 08:55
用户795807 2008-8-19 20:34
computer00 2008-7-13 01:09
用户737017 2008-7-12 22:37
用户96862 2008-1-18 09:53
computer00 2007-12-12 13:05
写个程序,打开内部上拉电阻,然后测量D+,看能不能拉高。
用户1333012 2007-12-12 10:39
用户1333012 2007-12-12 10:22
改过来了
我检查没发现28脚有电压啊
该不会是d12挂了吧
computer00 2007-12-11 23:43
22欧姆的上拉电阻肯定是搞错了,22欧姆的电阻应该串联在D+和D-上的,或者干脆取消掉试试。你可以看看我最新的原理图: