完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我有一个 touchGFX 项目(使用 STM32G071RB Nucleo AZ1 板设置创建),如果在调试 (cubeIDE) 下运行,将在 SystemClock_Config() 期间失败。这需要一个外部加载程序来对外部闪存进行编程。
如果我执行硬件重置,代码运行正常。 经过一些调试后,我发现问题似乎出在 HAL_RCC_OscConfig() 上。应用程序正在使用 PLL 将时钟设置为 HSI。如果 HAL_RCC_OscConfig 检测到已经设置了带 PLL 的 HSI,那么它只会检查 PLL 是否设置正确,如果不正确则失败并返回 HAL_ERROR。看起来有些东西(我假设是外部加载器)也在使用带 PLL 的 HSI,但 PLL 设置不同。因此应用程序时钟设置失败。 如果我进行硬件重置,那么加载程序显然未被使用并且时钟处于重置状态,因此 HAL_RCC_OscConfig 工作正常。 为了解决这个问题,我在 SystemClock_Config(例如 RCC->CFGR = 0;)之前将时钟源设置为 HSI(无 pll),以强制 HAL_RCC_OscConfig 正确更新 RCC。 我错过了什么吗?这是 HAL_RCC_OscConfig 中的错误还是它有这种行为的原因? 谢谢,托比 |
|
相关推荐
1个回答
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2724 浏览 1 评论
3237 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1807 浏览 1 评论
3646 浏览 6 评论
6034 浏览 21 评论
1336浏览 4评论
197浏览 3评论
对H747I-DISCO写程序时将CN2的st-link复用为usart1,再次烧录时无法检测到stlink怎么解决?
350浏览 2评论
STM32G474RE芯片只是串口发个数据就发烫严重是怎么回事?
442浏览 2评论
STM32处理增量式编码器Z信号如何判断中断是正转的还是反向转的?
268浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 09:18 , Processed in 1.152929 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号