fengye1966 发表于 2017-3-29 11:59:39

现金悬赏-STM32F4Cube生成的USB HID应用无法接收数据

遇到的问题和如下帖子的一模一样,怀疑是cube的BUG,在F1系列的cube生成代码就没有这个问题。
https://www.stmcu.org.cn/module/forum/thread-609827-1-1.html
移植的stm32 hid设备只能在while(1)中发送数据给PC后,PC的上位机bushound才能发送数据给下位机。
如果hid设备不发数据给PC,则bushound发送数据时会报错“invalid command”, bushound看不到数据发下去。
请问这个是什么原因导致的?哪位大神解决了找我要现金红包,多谢!我的QQ175966115

fengye1966 发表于 2017-3-29 13:01:50

顶一下,在线等

15616384352 发表于 2017-3-29 16:55:14


这是通过STM32CubeMX 生成的自定义USB HID设备,设备描述符都有注释,数据收发为8字节,一帧为9字节,第一字节为ID,后面8字节为数据。ID在描述符中没有指定,所有固定为00.
注意:
1、STM32CubeMX配置使用HSE但是生成的代码里面还是会配置HSI,这样导致程序死掉(不知道官方意图)
2、STM32CubeMX生成的HID设备里面的CUSTOM_HID_OutEvent_FS 函数的参数是两个uint8_t,即只能处理一个字节的数据(ID不算),所有需要改为uint8_t * ,同样函数类型及调用也要改。
3、生成的代码里面一次接收多少字节的数据是由宏 USBD_CUSTOMHID_OUTREPORT_BUF_SIZE 指定,可根据自己需要修改

小平菜 发表于 2020-5-29 00:22:43

学习一下
页: [1]
查看完整版本: 现金悬赏-STM32F4Cube生成的USB HID应用无法接收数据