圈圈通过对原来的USB摇杆实例进行修改,做了一个
USB HID多媒体键盘,可以调节音量、启动Windows Media
播放器、停止/暂停播放、打开网页、打开计算器等等功能。
由于摇杆和多媒体键盘都是HID设备,因而改动的工作量很
少,只需要修改一下VID、PID,字符串描述符、报告描述
符、返回报告的格式即可。
板上各按键的功能分配如下:摇杆往上音量增加;摇杆
往下音量降低;摇杆往左静音;摇杆往右启动Windows
Media播放器;摇杆中键(确认键)为播放/暂停(对千千
静听等播放器也有效);按键KEY2为打开网页;按键KEY3
为打开计算器。
从这里下载整个代码包:
下载该压缩包,解压到Manley\EKBoard\EKSTM32F\
USBDemo(8M osc)\USBDemo\USBLib\demos目录下,
然后编译,烧写调试即可。
运行后可以看到弹出的新硬件,以及设备管理器
中的设备,一个为HID设备,一个为标准用户控制设备,
如下图所示:
报告描述符的代码如下:
const u8 ReportDescriptor[SIZ_REPORT_DESC] =
{
0x05, 0x0c, // USAGE_PAGE (Consumer Page)
0x09, 0x01, // USAGE (Consumer Control)
0xa1, 0x01, // COLLECTION (Application)
0x09, 0xea, // USAGE (Volume Decrement)
0x09, 0xe9, // USAGE (Volume Increment)
0x09, 0xe2, // USAGE (Mute)
0x09, 0xcd, // USAGE (Play/Pause)
0x0a, 0x83, 0x01, //USAGE (Windows Media Player(0x183))
0x0a, 0x23, 0x02, //USAGE (AC Home(0x0223))
0x0a, 0x92, 0x01, //USAGE (AL Calculator(0x192))
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x25, 0x01, // LOGICAL_MAXIMUM (1)
0x95, 0x07, // REPORT_COUNT (7)
0x75, 0x01, // REPORT_SIZE (1)
0x81, 0x02, // INPUT (Data,Var,Abs)
0x75, 0x01, // REPORT_SIZE (1)
0x95, 0x01, // REPORT_COUNT (1)
0x81, 0x03, // INPUT (Cnst,Var,Abs)
0xc0 // END_COLLECTION
}; /* ReportDescriptor */
怎样?好玩吧?记得给圈圈投票哦~~~点左上角那个“顶一下”,谢谢了~~~
用户447435 2013-9-5 15:07
用户966982 2013-2-22 16:48
computer00 2012-10-20 11:55
用户377235 2012-10-10 10:15
为什么没有上一首下一首呢?
用户377235 2012-7-21 17:56
无法识别啊???烧录在stm32f103vct6上失败
用户1433187 2009-6-26 11:08
用户601697 2008-10-30 10:43
computer00 2008-9-17 13:00
用户1572896 2008-9-17 09:25
computer00 2008-9-17 00:16