时钟系统
概念:
时钟系统是由震荡器(信号源)、定时唤醒器分频器等组成的电路。常用的信号源有晶体震荡器和RC震荡器。
意义:
时钟是嵌入式系统的脉搏,处理器内核在时钟驱动下完成指令执行,状态变换等动作,外设在时钟的驱动下完成各种工作,例如:串口数据的发送、A/D转换、定时器计数等等。
震荡器
概念:
震荡器是用来产生重复电子讯号的电子元件。其构成的电路叫做振荡电路,能将直流电转换为具有一定频率交流信号输出的电子电路或装置。
分类:
震荡器主要分为RC、LC震荡器和晶体震荡器。
stm32由三种不同的时钟源可被用来驱动系统时钟(SYSCLK):
- HSI:高速内部时钟,RC震荡器,频率为8MHz
- HSE:高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~16MHz
- PLL:锁相环倍频输出,其时钟输入源可选择为HSI/2、HSE或者HSE/2。倍频可选择为2~16倍,但是其输出频率最大不得超过72MHz
这些设备有以下2种二级时钟源:
- LSI:40kHz低速内部RC,可以用于驱动独立看门狗和通过程序选择驱动RTC。 RTC用于从停机/待机模式下自动唤醒系统。
- LSE:32.768kHz低速外部晶体也可用来通过程序选择驱动RTC(RTCCLK)。
- 当不被使用时,任一个时钟源都可被独立地启动或关闭,由此优化系统功耗。
- 任何一个外设在使用之前,必须首先使能其相应的时钟
- 由于使用外部晶振倍频精确度会比内部震荡时钟高很多,所以一般都是使用外部晶振