在RCC库函数中,我们主要介绍一下几个常用函数。
1.RCC_DeInit函数的功能是将外设RCC寄存器重设为默认值。这个函数不改动寄存器RCC_CR的HSITRIM[4:0]位,不会重置RCC_BDCR寄存器RCC_CSR。
2.CC_HSEConfig函数的功能是设置外部高速晶振(HSE),其输入参数是32位的RCC_HSE:HSE的新状态。产生该动作的先决条件是加入HSE被直接或通过PLL用于系统时钟,那么就不能被停振。且RCC_HSE可以有RCC_HSE_ON/RCC_HSE_OFF/RCC_HSE_Bypass三种定义,分别是HSE OFF,HSE ON,HSE 晶振被外部时钟旁路。其中旁路的意思是将芯片内部的用于外部晶体起振和功率驱动等的部分电路和XTAL_OUT引脚断开,这时使用的外部时钟是有源时钟或者其他STM32提供的CCO输出等时钟信号,直接单线从XTAL_IN输入,这样即使外部有晶体也震荡不起来了。你就直接理解成被断开就好。
3.RCC_WaitForHSEStartUP函数的功能是等待HSE起振,该函数将等待,知道HSE就绪或在超时的情况下退出。下面利用代码讲述该函数在系统时钟配置中的作用。
ErrorStatus HSEStartUPStatus;