|
本帖最后由 youxia 于 2018-6-24 16:19 编辑 本人最近使用STM32CubeMX为NUCLEO-L4R5ZI创建一个USB应用,可是在使用过程中发现几个坑,在此分享一下。 先说明一下,我使用的NUCLEO-L4R5ZI为A-01版,软件包为STM32CubeL4 Firmware Package V1.12.0 。 先选择Board Selector,选择NUCLEO-L4R5ZI,点击YES。在配置引脚的时候,发现PG5和PG6是不是反了?
还有在给USB供电使能时,由STM32CubeMX生成的usbh_platform.c文件中,void MX_DriverVbusFS(uint8_t state)函数内data也是反的,参考例程可以明显对比出来,STMPS2151STR的手册内也表明EN脚低电平有效。
还有是例程MSC_Standalone使用HSE作为主时钟,可实际上由于板子上没有焊上8MHz晶振,所以根本跑不下来。实际上选择HSI做主时钟。 最后软件生成的代码中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)
|
【STEVAL-STWINKT1B评测】运行Datalog固件并记录运行时间
【STEVAL-STWINKT1B评测】数字麦/模拟麦对比测试+音频配套上位机软件开发
【板卡评测】STEVAL-STWINKT1B读取 ACC/GYRO/MAG 实时数据
小白也能明白的STM32的低功耗与唤醒机制
【源码】STLINK-V3MINI 高速USB仿真器,成功改刷【高速CMSIS-DAP】
【STM32入门学习路径指南】(四步走)
STM32和Arduino对比,谁更耐打?
STM32系统中2种数据掉电保护的方法
STM32 LL为什么比HAL高效?
无刷直流电机控制应用+基于STM8S系列单片机---电子书
微信公众号
手机版
第1个是USB HOST_FREERTOS生成文件有问题。改用没加FREEROTS的。
第2个是任务堆栈,一定要设置大一点,否则运行文件函数系统就会挂掉!
P.S stm32cube.com 这个网站是个什么鬼?不注册还进不去 艹