OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2988|回复: 3

stm32 usb device初始化不成功

[复制链接]

2

主题

5

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2020-5-11
在线时间
10 小时
发表于 2020-5-20 20:11:48 | 显示全部楼层 |阅读模式
10金钱
stm32f407用usb+sd卡做u盘,用smartcubeMx生成的,发现MX_USB_DEVICE_Init在这儿程序就停止了,最终定位程序出错是在 HAL_PCD_Init(PCD_HandleTypeDef *hpcd)中如下,是什么原因啊?/* Force Device Mode*/  (void)USB_SetCurrentMode(hpcd->Instance, USB_DEVICE_MODE);


最佳答案

查看完整内容[请看2#楼]

原因是freeRTOS与HAL库时钟冲突导致HAL_Delay卡死,解决有两种方案,第一,重写HAL_Delay,换成系统延时osDelay;第二,将HAL的sys设置为定时器。使用第二种,会出现设管理中显示感叹号,只要将TIM中断优先级调整为最高就行了。在stm32f4xx_hal.h中,更改如下: #define TICK_INT_PRIORITY (0x00U)
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

5

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2020-5-11
在线时间
10 小时
 楼主| 发表于 2020-5-20 20:11:49 | 显示全部楼层
原因是freeRTOS与HAL库时钟冲突导致HAL_Delay卡死,解决有两种方案,第一,重写HAL_Delay,换成系统延时osDelay;第二,将HAL的sys设置为定时器。使用第二种,会出现设管理中显示感叹号,只要将TIM中断优先级调整为最高就行了。在stm32f4xx_hal.h中,更改如下:
#define  TICK_INT_PRIORITY            (0x00U)
回复

使用道具 举报

0

主题

78

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2018-12-27
在线时间
0 小时
发表于 2020-5-20 20:11:51 | 显示全部楼层
默默的顶一下...
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2020-5-21 01:27:54 | 显示全部楼层
继续努力
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-1 18:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表