社区应用 最新帖子 精华区 社区服务 会员列表 统计排行 银行
主题 : MDK9X35-EK_T70开发板keil裸机USB例程05:usb_hid_mouse(USB HID人机接口设备鼠标例子)  t.sina.com.cn 分享到新浪微博   腾讯微博 转播到腾讯微博
Mcuzone_xyz 离线
级别: 金卡会员
显示用户信息 
楼主  发表于: 2014-02-11   

MDK9X35-EK_T70开发板keil裸机USB例程05:usb_hid_mouse(USB HID人机接口设备鼠标例子)

这个例子模拟了一个简单的鼠标。
    当运行这个程序的开发板通过USB线连接到PC主机时,开发板在PC上显示为一个符合HID的鼠标。然后你可以使用开发板上的按键来控制PC主机的光标。


关键字:
ATMEL AT91 AT91SAM9X35 9X5 9X35 Keil MDK MDK9X5 MDK9X35 裸机 裸机程序 softpack 例子 例程 demo JLINK SAM-ICE USB Device Port(UDP) USB Humen Interface Device class(HID) HID-compliant mouse USB人机接口设备 鼠标


硬件平台:MDK9X35-EK_T70开发板
编译工具:KEIL uVision4

[ 此帖被Mcuzone_xyz在2014-02-12 14:09重新编辑 ]
Mcuzone_xyz 离线
级别: 金卡会员
显示用户信息 
沙发  发表于: 2014-02-11   
源程序需做如下修改:
(若已修改则无需再改动)

board.h文件:

113~115行:
//#define BOARD_REV_A_VB
//#define BOARD_REV_A_EK
#define BOARD_REV_B_EK
改为:
//#define BOARD_REV_A_VB
#define BOARD_REV_A_EK
//#define BOARD_REV_B_EK

755~760行:
#ifdef BOARD_REV_A_EK
/** Push button #0 definition. Attributes = pull-up + debounce + interrupt on rising edge. */
#define PIN_PUSHBUTTON_1    {PIO_PD18, PIOD, ID_PIOD, PIO_INPUT, PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_FALL_EDGE}
/** Push button #1 definition. Attributes = pull-up + debounce + interrupt on falling edge. */
#define PIN_PUSHBUTTON_2    {PIO_PD19, PIOD, ID_PIOD, PIO_INPUT, PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_FALL_EDGE}
#endif
改为:
#ifdef BOARD_REV_A_EK
/** Push button #0 definition. Attributes = pull-up + debounce + interrupt on rising edge. */
#define PIN_PUSHBUTTON_1    {PIO_PB17, PIOB, ID_PIOB, PIO_INPUT, PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_FALL_EDGE}
/** Push button #1 definition. Attributes = pull-up + debounce + interrupt on falling edge. */
#define PIN_PUSHBUTTON_2    {PIO_PC31, PIOC, ID_PIOC, PIO_INPUT, PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_FALL_EDGE}
#endif
做以上修改后,则按下开发板上的按键K2,PC上的光标向左移动,按下开发板上的按键K3,PC上的光标向右移动。
Mcuzone_xyz 离线
级别: 金卡会员
显示用户信息 
板凳  发表于: 2014-02-11   
程序运行后,调试串口及设备管理器如下图所示
Mcuzone_xyz 离线
级别: 金卡会员
显示用户信息 
地板  发表于: 2014-02-11   
开发板用USB线与PC主机相连后,调试串口及设备管理器如下图所示

此时就可以使用开发板上的按键K2和K3来控制PC上光标的左右移动。
Mcuzone_xyz 离线
级别: 金卡会员
显示用户信息 
4楼  发表于: 2014-02-11   
开发板上USB和按键K2、K3的位置如下图所示
Mcuzone_xyz 离线
级别: 金卡会员
显示用户信息 
5楼  发表于: 2014-02-11   
描述
快速回复

如果您在写长篇帖子又不马上发表,建议存为草稿
验证问题:
Keil是做啥的?
(备选答案:餐饮、编译器、聊天软件) 正确答案:编译器
按"Ctrl+Enter"直接提交