STM32f429标准库如何改内部rc时钟工作?
要改变STM32F429的内部RC时钟工作,您可以使用STM32F429标准库的函数来设置和配置系统时钟。
具体步骤如下:
1. 在STM32F429中,内部RC时钟被称为HSI(High Speed Internal)时钟。
2. 要改变HSI时钟的工作频率,您需要设置相关的寄存器和时钟分频器。
3. 首先,使用RCC_DeInit()函数将系统时钟设置为默认状态,使HSI为默认频率。
4. 然后,使用RCC_HSICmd()函数打开或关闭HSI时钟。
5. 使用RCC_PLLConfig()函数配置PLL(锁相环)时钟源和分频系数。
6. 使用RCC_PLLCmd()函数打开或关闭PLL时钟。
7. 最后,使用RCC_SYSCLKConfig()函数将系统时钟设置为所需的时钟源。
以下是一个简单的例子,说明如何将HSI时钟设置为16MHz:
```c
#include "stm32f4xx.h"
int main(void) {
// 设置系统时钟为默认状态
RCC_DeInit();
// 打开HSI时钟
RCC_HSICmd(ENABLE);
// 配置PLL时钟源和分频系数
RCC_PLLConfig(RCC_PLLSource_HSI, 16, 336, 4, 7);
// 打开PLL时钟
RCC_PLLCmd(ENABLE);
// 等待PLL时钟稳定
while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);
// 将PLL时钟作为系统时钟
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
// 等待系统时钟切换完成
while (RCC_GetSYSCLKSource() != 0x08);
while (1) {
// 其他代码
}
}
```
以上是通过设置PLL时钟将HSI时钟改为16MHz的例子,您可以根据需要修改分频系数和时钟源来调整HSI时钟的工作频率。
回复
我要赚赏金打赏帖 |
|
|---|---|
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
| TCS3472S传感器及其色彩检测被打赏¥19元 | |
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |
| AG32VH407下光照强度传感器BH1750及其检测被打赏¥22元 | |
| AT32VH407下使用温湿度传感器DHT22进行检测被打赏¥20元 | |
| DIY一个婴儿澡盆温度计被打赏¥34元 | |
| 【FreeRtos】FreeRtos+MPU region 配置规则被打赏¥23元 | |
| 【分享开发笔记,赚取电动螺丝刀】三分钟快速上手驱动墨水屏(ArduinoIDE)被打赏¥28元 | |
我要赚赏金
