STM32重新配置时钟需要注意的事情

因为项目中需要将STM32使用内部HSI初始化,对PLL芯片配置后再使用PLL产生的信号作为HSE,重新配置STM32的时钟,此时发现程序卡在了
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
Error_Handler();
}
这里。然后看了官方的RCC例程后发现了需要
1、设置时钟源为内部时钟
2、初始化锁相环
3、切回外部时钟源

于是在二次配置时钟的函数内锁相环初始化前添加了以下语句,正常工作
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_SYSCLK;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI;
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK)
{
Error_Handler();
}

posted @   SymPny  阅读(147)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2023-08-14 (三)MIT公开课雷达系统导论之传播效应
2023-08-14 (二)MIT公开课雷达系统导论之雷达方程
2023-08-14 1(一)MIT公开课雷达系统导论之基本介绍
点击右上角即可分享
微信分享提示