前言
打开cubemx看一下stm32f103rc的时钟树,很多初学者反馈一看到这横七竖八的走线就懵。没啥难的,静下心来,找到时钟源顺着箭头一步步捋就行了。
RC时钟or外部时钟?
一般指的是这两个:
内部RC和外部时钟改如何选择?
内部RC产生的时钟精度不高,看下图参数。
如果内部时钟的精度无法满足需求则需要采用外部时钟。但使用外部时钟成本也会增加。
时钟精度:
(外部)有源晶振>(外部)无源晶振>内部RC
大多数消费类电子产品中内部时钟就够用了,没必要使用外部时钟。
时钟树该如何配置?
- 1,满足模块需求,例如timer。初学者如果拿不准设置成最高就行了,先让功能跑起来。
- 2,低功耗要考虑。频率越高,功耗越高。MCU运行本质上是1--->0---->1---->0 的变化,这种变化会消耗能量,频率越高这种变化也越快,单位时间内消耗的能量也越多。
RTC(Real Time Clock)实时时钟
RTC一般用来搞电子日历的。外面会接一个32.768KHz的外部晶振。
为啥是32.768KHZ?32768正好是2^15。经验上都会采用这个值。反过来当看到板子上有32.768KHz的晶振大概率这个板子就有电子日历功能。有些为了确保在MCU断电的情况下RTC还能正常工作会在MCU的VBAT引脚上接一个纽扣电池。