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

使用Cube创建STM32L4R5ZI USB应用时发现的坑以及U盘程序分享

[复制链接]
jiguosheng 发布时间:2018-6-24 09:34
本帖最后由 youxia 于 2018-6-24 16:19 编辑
: e, C2 [  @5 \3 p- {  O/ d
+ k) [, Z" `. B3 Y. n/ K: N本人最近使用STM32CubeMX为NUCLEO-L4R5ZI创建一个USB应用,可是在使用过程中发现几个坑,在此分享一下。1 u& j, |7 b' X! k9 T$ e) P+ E
先说明一下,我使用的NUCLEO-L4R5ZI为A-01版,软件包为STM32CubeL4 Firmware Package V1.12.0 。: y, W( S1 P* |
先选择Board Selector,选择NUCLEO-L4R5ZI,点击YES。在配置引脚的时候,发现PG5和PG6是不是反了? 不一致的地方.jpg $ Y8 J' v1 P2 \0 P* P
不一致的地方2.jpg , n# N$ j; F) H7 F( D" r
还有在给USB供电使能时,由STM32CubeMX生成的usbh_platform.c文件中,void MX_DriverVbusFS(uint8_t state)函数内data也是反的,参考例程可以明显对比出来,STMPS2151STR的手册内也表明EN脚低电平有效。
  F* ^3 H, }( w5 S 错误2.jpg
8 A9 L: {& E8 X' u) P" P0 o 错误3.jpg 9 I5 ]2 H$ s) @: B. ]3 Q
错误4.jpg / Y; [& |% `0 o2 P( J. e
还有是例程MSC_Standalone使用HSE作为主时钟,可实际上由于板子上没有焊上8MHz晶振,所以根本跑不下来。实际上选择HSI做主时钟。6 N! p5 n/ E6 U  c6 g" l4 W( W
最后软件生成的代码中USBH_Init的参数为USBH_Init(&hUsbHostFS, USBH_UserProcess, HOST_FS);HOST_FS=1。而例程中则是USBH_Init(&hUSBHost, USBH_UserProcess, 0);不是FS USB吗?怎么成了HS USB?最后上传程序和配置文件: STM32L4R5ZI.zip (5.28 MB, 下载次数: 48)
收藏 评论1 发布时间:2018-6-24 09:34

举报

1个回答
modu8888 回答时间:2018-6-25 10:10:15
补充cubemx+freertos+usb host的两个坑:7 k$ ]9 \2 n& I4 F" b! q
第1个是USB HOST_FREERTOS生成文件有问题。改用没加FREEROTS的。
' l( S; }+ m2 w" Y1 [第2个是任务堆栈,一定要设置大一点,否则运行文件函数系统就会挂掉!
6 u+ T5 m6 w- j- ~- q4 k, E: g1 m9 c! o. y
P.S stm32cube.com 这个网站是个什么鬼?不注册还进不去  艹

所属标签

相似技术帖

官网相关资源

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