当前位置:首页 > 问问

rcc->cr 什么意思 从rcc->cr理解STM32时钟设置

rcc->cr 什么意思?

rcc->cr是指Reset and Clock Control (RCC)模块中的Control Register (CR),是STM32系列微控制器中常见的一个寄存器,其作用是控制系统时钟的启停以及分频。

1、RCC模块的作用

RCC模块是一种系统控制模块,用来控制微控制器的时钟。STM32系列微控制器中,RCC模块是一个关键的模块,其能够决定STM32系列微控制器的性能和稳定性。RCC模块的主要功能包括:

- 配置微控制器内部时钟

- 控制时钟分频

- 提供系统时钟给其他模块使用

2、CR寄存器的作用

RCC模块中最重要的寄存器是Control Register (CR),它的作用是控制系统时钟的启停以及分频。CR寄存器共有32位,其中包括了很多控制位。其中比较常用的控制位有:

- HSEON (HSE clock enable):启动高速外部时钟

- HSEBYP (HSE clock bypass):旁路高速外部时钟

- PLLON (PLL enable):启动PLL时钟

- SW (System clock switch):系统时钟选择

3、如何使用CR寄存器

在RCC模块初始化时,我们需要使用CR寄存器来配置系统时钟。例如,如果我们希望启动高速外部时钟(HSE),我们需要将CR寄存器的HSEON位设置为1,具体代码如下:

```

RCC->CR |= RCC_CR_HSEON;

```

同理,如果我们想要通过PLL时钟来驱动系统时钟,我们需要先将相应的寄存器进行配置并且打开PLL时钟,如下:

```

// Set PLL source and multiplier

RCC->PLLCFGR = PLL_SOURCE_HSE | PLL_MULTIPLIER_12;

// Enable PLL

RCC->CR |= RCC_CR_PLLON;

```

4、注意事项

在使用CR寄存器时,我们需要注意以下几点:

- 对CR寄存器进行写入操作时,需要使用按位或(|)符号。

- 对CR寄存器进行读取操作时,需要使用按位与(&)符号。

- 对CR寄存器进行修改操作时,需要首先禁用相应的时钟,然后再修改相应的寄存器。

总之,对于STM32系列微控制器而言,RCC模块及其寄存器CR是非常重要的系统控制模块,使用时需要仔细阅读相关的文档以及参考资料,以避免出现系统不稳定等问题。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:fendou3451@163.com
标签:

  • 关注微信

相关文章