你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32 usb hid设备能发数据给PC,但不能接收PC的数据!!!

[复制链接]
sz189981 提问时间:2016-12-19 18:26 /
悬赏5ST金币未解决
移植的stm32 hid设备只能在while(1)中发送数据给PC后,PC的上位机bushound才能发送数据给下位机。
如果hid设备不发数据给PC,则bushound发送数据时会报错“invalid command”, bushound看不到数据发下去。
请问这个是什么原因导致的?


赞 1 收藏 3 评论14 发布时间:2016-12-19 18:26

举报

14个回答
无薪税绵 回答时间:2017-3-8 08:23:18
请先确定,上位机发送的命令有没有错误。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

小小超 回答时间:2017-3-8 08:39:08
应该是USB的配置有错吧。设备描述符不对的话,发送的地址可能有错。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

yb0121 回答时间:2017-3-8 09:00:56
在例程中改吧
cldym 回答时间:2017-3-8 09:08:25
在例程中改吧
1035036848 回答时间:2017-3-8 09:10:42
本帖最后由 1035036848 于 2017-3-8 09:34 编辑

我认为把描述符代码贴一下出来比较好。。。
tanr 回答时间:2017-3-8 09:20:50
我也是有这个问题,我的解决方法是在while中一直发送空数据,这样就保证了stm32和PC的连接状态,然后就正常了,我觉得这样的解决方法不是很好,但是我没有法相更好的方法去解决这个问题

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

Dylan疾风闪电 回答时间:2017-3-8 10:55:16
检查:
设备描述符是否正确,
USB的输出端点是否配置好。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

中山无雪 回答时间:2017-3-8 18:30:07
应该是描述符配置问题

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

庚 回答时间:2017-3-10 15:56:46
zwmasdf 回答时间:2017-3-10 21:30:35
你是用中断传输还是用控制传输的
fengye1966 回答时间:2017-3-28 11:38:55
遇到了同样的问题,把这个顶上去,是不是ST HAL官方库有问题?检查下去,有一个EpXfer的EP的方向始终为1。解决此问题的请找我要红包,QQ175966115
群星闪烁 回答时间:2017-3-29 16:44:28
楼主能否发下USB HID的描述符,让大家检查看下。我这边用STM32CubeMX 写了一个自定义HID,收发都是正常的,所以HAL和STM32CubeMX 都应该是没问题的,可能是代码中哪里没有配置好。如果要生成HID设备描述符可以用HID Descriptor Tool 工具,这个工具可以帮你检查描述符是否正确。
sz189981 回答时间:2017-7-27 16:18:47
汗!用BusHound通信时,打开PortHelper.exe一直检测着这个USB设备,BusHound就能自由的通信了。
虽然不知道什么原因,但同事做的PC端软件工作时,能自由读写,就先这样了。
小小向日葵 回答时间:2017-9-29 18:08:58
15616384352 发表于 2017-3-29 16:44
楼主能否发下USB HID的描述符,让大家检查看下。我这边用STM32CubeMX 写了一个自定义HID,收发都是正常的, ...

我这边也是用cubemx写的自定义HID,发送没有问题,接受不行,研究好久了实在找不到出问题的点了

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版