打印

HID USB设备 由端点1改成端点2,出错

[复制链接]
3500|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qqwan|  楼主 | 2011-12-14 14:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位好!在网上看到你用STM32F103实现了双接口(Keypad+Mouse),我刚接触HID USB,不熟,特请教!我用STM32F103 做了一个 HID USB的自定义设备,是用KEIL里的例程“Custom_HID”改的,用到端点1的输入输出,用BUS HOUND监听,输入输出正常,现在试着改成端点2输入输出,就是把相应的端点1变量及函数改成端点2,包括:usb_prop.c 的 CustomHID_Reset(),usb_endp.c 的 EP1_OUT_Callback(),定义ENDP2的收发地址等,改了之后,用BUS HOUND监听,枚举成功,便稍后就出问题,不断地复位,并且用BUS HOUND不能输入输出数据,不知错在哪里,请各位指教!
沙发
lllaaa| | 2011-12-14 19:18 | 只看该作者
usb_desc.c里描述符里也要改

使用特权

评论回复
板凳
qqwan|  楼主 | 2011-12-15 16:17 | 只看该作者
本帖最后由 qqwan 于 2011-12-17 17:29 编辑

这个问题已解决了.
现在要在一个STM32F103的MCU上,做:“绝对座标鼠标”与“自定义”2个设备,各用一个接口。设备启动时,鼠标发数据,自定义设备不发数据。当上位机发送命令(例如:A),要求自定义设备发数据时,这时鼠标不发数据;当上位机发送命令(例如:B),要求鼠标发数据时,这时自定义设备不发数据。修改了来自keil的“Custom_HID”例程,结果:当处于鼠标方式时,发送数据,在BUS HOUND看不到发送的数据,当处于自定义方式时,收发数据及命令都正常。
      如果把鼠标与自定义设备不编程在一个程序中,分别独立编程,工作都正常。
      由于是初学usb,搞不定这个问题,请教各位同行,先谢了!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

6

帖子

1

粉丝