|
1.我用的STM32F429 MCU 2.并通过cubemx生成了 USB HOST HID的鼠标键盘demo 3.调试demo可以正常工作 4.调试 以control传输控制键盘的灯光正常,我使用了这个函数:'USBH_StatusTypeDef USBH_HID_SetReport(USBH_HandleTypeDef phost, uint8_t reportType, uint8_t reportId, uint8_t reportBuff, uint8_t reportLen)' 问题:现在我有一个HID设备,我已经枚举成功,在interface中它有一个interrupt OUT传输,我用同样控制键盘的方法去操作OUT传输数据,现在尝试是不行的,我在HID的文件中没有找到适合interrup OUT的用户函数,请问我需要自已写个interrupt OUT函数吗?谢谢 实验用工具的方式发送传输数据是可行的:
但我用status = USBH_HID_SetReport (phost,2,2,Outreport1.HID_reportBuff,sizeof(UHID_SetOutReport));传输数据,但device并没有收到,
|
STM32F407全速USB 回复 STALL 握手包
USB_WritePacket 陷入无限循环
STM32F405RG VCP 报错This device cannot start (code 10)
STM32F401RBT6 USB 大容量存储设备问题
USB OTG 主机枚举问题
STM32F042 在启动文件内跳转至 USB DFU Bootloader
B-L475E-IOT01A 无法枚举为 USB DFU 设备
USBX Audio Class frame done 不触发回调
STM3210C-EVAL USB 官方例程调试报错
STM32F103 全速 USB 大容量存储方案咨询
微信公众号
手机版
老铁,USB调试工具给我发一下,QQ741040423,谢谢老铁!
已解决;
在usb HOST libray中有一个usbh_ioreq.c
ST官方给出了一个函数:USBH_InterruptSendData
枚举完成;直接调用就可以实现,但要注意发送的字节数和初始化的字节数不能溢出,如果report文件大于64byte,可以用for循环多次发送的的方式
/**
[md]您好,我和你在做类似的项目,mcu也是stm32f429做host,键盘和鼠标都是可以上传数据的,修改相关地方后,可以实现自定义hid设备,上传数据没有什么问题,就是下发数据不对,也用了USBH_InterruptSendData和send_reportsend,都是不行,请问有什么调试方法吗?如果帮忙调试,可以有偿,或者麻烦您提供一下你的通信代码,麻烦了。
请问后来解决了嘛,同样遇到这个问题