外部晶振由12M变更为8M,怎么修改时钟配置

在这里插入图片描述

### STM32H743时钟配置及详细说明 对于STM32H743微控制器而言,其时钟系统的复杂性和灵活性使得正确理解和配置时钟树至关重要。该器件支持多种振荡器和PLL设置,允许开发者根据具体的应用需求优化性能与功耗。 #### 输入时钟源的选择 STM32H743具备多个内部和外部时钟源供选择: - **HSI (High Speed Internal)**: 内置高速RC振荡器,默认频率为16 MHz。 - **HSE (High Speed External)**: 外部晶振或陶瓷谐振器,通常用于提供更精确的时间基准。 - **LSI (Low Speed Internal)** 和 LSE (Low Speed External): 主要服务于RTC模块和其他低速外设。 为了实现最佳精度与时基稳定性,推荐优先考虑使用高稳定性的外部晶体作为主要时钟源[^2]。 #### PLL配置 相位锁定环路(Phase-Locked Loop, PLL) 是提高系统工作频率的关键组件之一。STM32H743内置了一个强大的多输入/输出PLL结构,能够基于不同的输入信号生成所需的高频时钟。例如,可以通过调整倍频系数来获得高达400MHz的工作频率(注意不同产品修订版的最大频率有所差异;如"H"版本可达480MHz而"Y"仅限于400MHz)。此过程涉及对`RCC_PLLCFGR`寄存器内相应字段的操作[^3]。 ```c // 配置PLL参数以达到目标频率 void configure_pll(void){ // 假定已启用并选择了合适的HSE作为PLL输入... RCC->PLLCFGR &= ~(RCC_PLLCFGR_PLLSRC | RCC_PLLCFGR_PLLM | RCC_PLLCFGR_PLLN | RCC_PLLCFGR_PLLP | RCC_PLLCFGR_PLLQ | RCC_PLLCFGR_PLLR); // 设置PLL M分频因子=5, N乘法因子=192, P除法因子=2, // Q除法因子=4, R除法因子=2. RCC->PLLCFGR |= (5 << RCC_PLLCFGR_PLLM_Pos) | (192 << RCC_PLLCFGR_PLLN_Pos)| (2 << RCC_PLLCFGR_PLLP_Pos) | (4 << RCC_PLLCFGR_PLLQ_Pos) | (2 << RCC_PLLCFGR_PLLR_Pos); // 启动PLL... } ``` 上述代码片段展示了如何通过修改特定的控制寄存器来设定PLL的各项参数,从而满足所需的核心处理速度及其他功能单元的要求。 #### 动态时钟管理 除了静态初始化阶段之外,在某些应用场景下可能还需要实时改变处理器及其关联设备的工作速率——比如进入休眠状态前降低能耗或是响应突发负载请求提升运算能力。为此,STM32H7系列提供了完善的API接口以及底层硬件机制支持这类操作,确保整个变更流程平滑过渡而不影响现有任务执行流。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值