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

【经验分享】STM32H7+USB3300+SD作为U盘速度慢的问题

[复制链接]
STMCU小助手 发布时间:2021-12-30 18:08
如题,在此我使用的是微雪电子的H7开发板(没办法,淘宝上能找到的USB3300模块就这一家,自然就使用了他家的开发板)。烧录了他家自带的USB_HS Device_MSC例程后进行测试,速度慢得离谱,如下图:) X/ h8 x$ ]& a: d4 Z
' G2 }7 Q: |6 F, R( e1 y
20210802095247192.png
7 w- {& ?; {4 i2 }; J( t+ q
         这个速度基本和FS差不多,关于这个我也和微雪的技术进行了沟通,他给我的答复是测试环境好的话只能达到24bps。我心里瞬间就卧槽了,这和微雪课堂上所说的加上外部PYH能达到480bps说辞完全不一样啊。问行不通,那就自己调试了。(以下仅作为参考,应用到自己的项目上还是要自己多研究哦,尤其是我开启了Cache,项目中如果使用了DMA就要当心了)
/ p( B3 r9 A9 {
- ~$ j7 V5 \. j需要配置的东西很简单,首先是USB_OTG_HS,把所需GPIO的速度都设为Very High ( q# H  a' e$ D- \/ u- e" a

, p3 q% J$ J4 L7 U0 T* w6 q1 f: |
20210802100821877.png
) y0 W- h9 a" m# y- v
然后增大USB_DEVICE的缓存(很重要)
- B# l$ [+ `7 G1 Y. W
7 |1 f! o) l8 k; Z7 F
2021080210115199.png
, e$ T7 t* l0 P- b& s
Cache使能(暂时不明白为什么不打开这个,插上电脑就不显示U盘设备)
) S% b" K3 b: q, U3 D  ?3 F9 v- J0 l; C( Y
20210802101445281.png
' ?5 r* }8 M0 s) R1 j: R
代码部分就是把usbd_storage_if里面的几个接口填充一下(若要使用DMA一定要注意内存数据的完整性问题)4 }: e" {- R7 _5 u
4 f9 D' C# D' N$ L% A0 C8 \
20210802102203233.png

7 d: E3 ^9 k6 z6 r3 C$ [
20210802102203237.png
# ?# ~7 e( J: h7 q: t
' C6 ~1 Z0 l& |( v8 z. _

6 }- {% b! d& Y8 `, ^+ r编译,烧录,USB接上电脑,可以发现速度直接起飞!
% O/ P& P1 p9 A) F
! ]( E: a' D  C, \* ~4 |6 S
20210802102450198.png
9 T5 {+ M, R) U6 h
" h6 \  Q# a6 m% n6 Q

- a6 t* z1 {9 i4 j2 @
赞 收藏 评论0 发布时间:2021-12-30 18:08

举报

0个回答

所属标签

相似技术帖

官网相关资源

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