RCC外设介绍
RCC是Reset and Clock Control (复位和时钟控制)的缩写,它是STM32内部的一个重要外设,负责管理各种时钟源和时钟分频,以及为各个外设提供时钟使能。RCC模块可以通过寄存器操作或者库函数来配置。
RCC是复位和时钟控制模块,它负责管理STM32内部的各种时钟源和时钟分频,以及为各个外设提供时钟使能。时钟是单片机运行的基础,时钟信号推动单片机内各个部分执行相应的指令。不同的外设可能需要不同的时钟频率,所以RCC模块可以通过寄存器操作或者库函数来配置系统时钟和总线时钟。
RCC复位部分
系统复位
系统复位将复位所有寄存器至它们的复位状态。 当发生以下任一事件时,产生一个系统复位:
- NRST引脚上的低电平(外部复位)
- 窗口看门狗计数终止(WWDG复位)
- 独立看门狗计数终止(IWDG复位)
- 软件复位(SW复位)
- 在进入待机模式时产生低功耗管理复位: 通过将用户选择字节中的nRST_STDBY位置'1'将使能该复位。这时,即使执行了进入待机模式的过程,系统将被复位而不是进入待机模式。
- 在进入停止模式时产生低功耗管理复位: 通过将用户选择字节中的nRST_STOP位置'1'将使能该复位。这时,即使执行了进入停机模式的过程,系统将被复位而不是进入停机模式。
关于用户选择字节的进一步信息,请参考STM32F10xxx闪存编程手册。
电源复位
电源复位当以下事件中之一发生时,产生电源复位:
- 上电/掉电复位(POR/PDR复位)
- 从待机模式中返回
备份域复位
备份区域拥有两个专门的复位,它们只影响备份区域。 当以下事件中之一发生时,产生备份区域复位。
- 软件复位,备份区域复位可由设置备份域控制寄存器 (RCC_BDCR)中的BDRST位产生。
- 在VDD和VBAT两者掉电的前提下,VDD或VBAT上电将引发备份区域复位。
RCC时钟控制部分
时钟是STM32内部最核心的器件,它可以提供时钟信号。依赖于这个信号,STM32中的器件才可以有条不紊地将工作进行下去。
STM32中能够主动发出时钟信号的元器件,可以用作时钟源 。STM32中有四个时钟源,还有一个辅助时钟源生成倍频时钟信号的器件锁相环
时钟源有以下几种:
- HSE 外部高速时钟
- HSI 内部高速时钟
- LSE 外部低速时钟
- LSI 内部低速时钟
- PLL锁相环
CubeMX配置时钟
首先在软件中先选择RCC时钟来源,一般使用外部高速晶振
紧接着在选择PLCLK,在鼠标区域输入需要的晶振频率即可一键配置完成,不需要考虑分频,倍频等其他需要自己计算的因素。