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

stm32h7 usb HS 中断传输模式,可以达到 24MB/s 吗?

[复制链接]
Hawksphen 提问时间:2021-9-1 16:03 /
请教一下大神,我最近选用 H730 搭配 usb3320,想要实现 usb HS 中断传输 24MB/s
目前速率只达到 8MB/s,想要将一个frame传输包个数改为 3,但没有找到设置方法
参考手册中有提到同步传输模式支持修改,那中断传输是否支持呢?
收藏 评论4 发布时间:2021-9-1 16:03

举报

4个回答
Hawksphen 回答时间:2021-9-2 17:46:41
xmshao 发表于 2021-9-2 10:57
在一个帧里发生多次数据传输是可能的,但这是硬件基于传输类型、最大传输包长、待传输数据量自动安排的,不 ...

感谢大神回复!但是不做其它设置的话,目前使用 cube 生成的 custom hid 代码,wMaxPacketSize 改为 1024,中断传输模式,发送 2048 byte 数据,测试速率还是 8MB/s,似乎硬件没有触发多包传输的功能
xmshao 回答时间:2021-9-2 17:48:26
一般来说,这个地方不用调整。

根据协议 我们可以调整端点描述符中 wMaxPacketSize 字段的 bit11 与 bit12 , 可能或者说有机会

实现1个为帧内有最多3次传输。 你可以尝试修改下看看。



Hawksphen 回答时间:2021-9-2 17:52:22
xmshao 发表于 2021-9-2 17:48
一般来说,这个地方不用调整。

根据协议 我们可以调整端点描述符中 wMaxPacketSize 字段的 bit11 与 bit12 ...

是的,描述符也尝试了修改,bit11-12修改为 1和2,但没有生效
Hawksphen 回答时间:2021-9-2 18:40:56
xmshao 发表于 2021-9-2 17:48
一般来说,这个地方不用调整。

根据协议 我们可以调整端点描述符中 wMaxPacketSize 字段的 bit11 与 bit12 ...

从 USB_EPStartXfer 函数的逻辑来看,会将 wMaxPacketSize 直接作为包大小用来计算包个数,如果 wMaxPacketSize 为 0xC00 或者 0x1400,那么包大小为就变成 3072 或者 5120,如果硬件没有内部逻辑来处理,那么包个数是不对的,而实际上这么配了之后,usb通信不正常了
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版