赞
踩
我用的是正点的
STM32F103
来进行学习,板子和教程是野火的指南者
。
之后的这个系列笔记开头未标明的话,用的也是这个板子和教程。
HSE:High Speed External Clock signal,即高速的外部时钟。
来源:无源晶振(4-16M),通常使用8M,通过倍频得到72M。
无缘晶振需要配两个电容
补充:
有源晶振一般4个脚,一个电源,一个接地,一个信号输出端,一个NC(空脚)。有源晶振自身就能震动。
时钟控制寄存器(RCC_CR)的位16:HSEON控制开关
时钟控制寄存器(RCC_CR)的位17:HSERDY显示时钟是否就绪(仅可读)
HSI:Low Speed Internal Clock signal,高速的内部时钟。
来源:芯片内部,大小为8M,当HSE故障时,系统时钟会自动切换到HSI,直到HSE启动成功。
控制:
时钟控制寄存器(RCC_CR)的位0:HSION控制开关
时钟控制寄存器(RCC_CR)的位1:HSIRDY显示时钟是否就绪(仅可读)
锁相环时钟:PLLCLK
来源:(HSI/2、HSE)经过倍频所得。
其中HSI一定会/2
分频,HSE可以选择是否/2
分频。
选择其中一个时钟进行倍频,即可得到锁相环时钟。
控制:
时钟配置寄存器(RCC_CFGR)位16:PLLSRC
时钟配置寄存器(RCC_CFGR)位17:PLLXTPRE
时钟配置寄存器(RCC_CFGR)位21:18:PLLMUL
注意:PLL时钟源头使用HSI/2的时候,PLLMUL最大只能是16,这个时候PLLCLK最大只能是64M,小于ST官方推荐的最大时钟72M。
锁相环时钟:SYSCLK,最高为72M(ST官方推荐的)
来源:HSI、HSE、PLLCLK。
控制:
时钟配置寄存器(RCC_CFGR)位1:0:SW
时钟配置寄存器(RCC_CFGR)位3:2:SWS(仅可读)
注意:通常的配置是SYSCLK=PLLCLK=72M。
AHB:advanced high-performance bus。
时钟配置寄存器(RCC_CFGR)位7:4:HPRE
如HCLK时钟为72M时,如果不用APB1外设,则分频系数为1(72M);如果使用APB1外设,则分频系数为2(此时36M),同时再倍频2给定时器2-7提供时钟(还是72M)。
时钟配置寄存器(RCC_CFGR)位10:8:PPRE1
时钟配置寄存器(RCC_CFGR)位13:11:PPRE2
其中ADC时钟最大14MHz,还需要对PCLK2时钟继续分频
时钟配置寄存器(RCC_CFGR)位15:14:ADCPRE
RTC时钟:为芯片内部的RTC外设提供时钟。
来源:HSE_RTC(HSE分频得到)、LSE(外部32.768KHZ的晶体提供)、LSI(40KHZ)。
控制:
备份域控制寄存器(RCC_BDCR)位9:8:RTCSEL
MCO:microcontroller clock output,微控制器时钟输出引脚,由PA8复用所得。
来源:PLLCLK/2,HSE、HSI、SYSCLK
控制:CRGR:MCO
时钟配置寄存器(RCC_CFGR)位26:24:MCO
时钟控制寄存器(RCC_CR)的位19:CSSON控制开关
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。