《嵌入式系统及应用 (21).pdf》由会员分享,可在线阅读,更多相关《嵌入式系统及应用 (21).pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、嵌入式系统及应用嵌入式系统及应用第二十一讲 时钟系统【课本 第11.1节】第第1 1页页 共共1010页页时钟系统是微控制器的一个重要部分时钟系统是微控制器的一个重要部分,它要为它要为CPU、总线及挂接在总线及挂接在总线上的各个外设模块产生时钟信号总线上的各个外设模块产生时钟信号。STM32 有丰富的外设模块有丰富的外设模块,不是所有的外设都需要系统时钟那么高不是所有的外设都需要系统时钟那么高的频率的频率。为了降低功耗为了降低功耗,STM32L431芯片采用了多个时钟源芯片采用了多个时钟源,不同的外不同的外设模块可以根据自己的需求进行选择设模块可以根据自己的需求进行选择。STM32L431将将
2、所有的外设时钟都设置为所有的外设时钟都设置为禁用禁用,待使用时待使用时,要要先打开对先打开对应的时钟应的时钟。嵌入式系统及应用嵌入式系统及应用第第2 2页页 共共1010页页11.1 时钟系统时钟系统11.1.1 时钟系统概述时钟系统概述STM32L431的时钟系统包括的时钟系统包括(1)高速外部高速外部HSE时钟时钟(2)高速内部高速内部HSI16、HSI48时钟时钟(3)内部内部MSI时钟时钟(4)锁相环锁相环PLL时钟时钟(5)低速外部低速外部LSE时钟时钟(6)低速内部低速内部LSI时钟时钟等六个时钟源等六个时钟源时钟系统框图(时钟系统框图(P258)外设时钟各时钟源各时钟源系统时钟来
3、源的设置系统时钟来源的设置各外设时钟的设置各外设时钟的设置嵌入式系统及应用嵌入式系统及应用第第3 3页页 共共1010页页(1)高速外部高速外部HSE时钟时钟OSC_IN与与OSC_OUT引脚接入引脚接入外部晶振外部晶振产生产生频率范围:频率范围:448MHz(2)高速高速内部内部HSI16时钟时钟和和HSI48时钟时钟内部内部RC振荡器生成振荡器生成,16MHz或或48MHz,成本较低成本较低启动速度比启动速度比HSE快快,但但精度不及精度不及HSE(3)内部内部MSI时钟时钟内部内部RC振荡器生成振荡器生成频率可通过时钟控制寄存器的频率可通过时钟控制寄存器的MSIRANGE3:0位进行选择
4、位进行选择,100kHz48MHz,有有12种不同种不同频率频率可用可用(具体见具体见P258)第第3 3页页 共共1111页页嵌入式系统及应用嵌入式系统及应用第第4 4页页 共共1010页页(4)锁相环锁相环PLL时钟时钟PLL 锁相环的锁相环的作用作用:产生与参考频率为整:产生与参考频率为整倍数关系且相位相关的振荡倍数关系且相位相关的振荡,即即进行倍频进行倍频PLL输出输出最高为最高为120MHz(5)低速外部低速外部LSE时钟时钟32.768KHz低速外部晶振或陶瓷谐振器低速外部晶振或陶瓷谐振器功耗低功耗低、精度高精度高实时时钟实时时钟(RTC)的时钟源的时钟源(6)低速内部低速内部LS
5、I时钟时钟RC振荡器振荡器,32KHz,低功耗时钟源低功耗时钟源主要主要供供独立看门狗独立看门狗、自动唤醒单元自动唤醒单元使用使用第4页 共11页嵌入式系统及应用嵌入式系统及应用第第5 5页页 共共1010页页可以使用可以使用HSI16、MSI、HSE、PLL四种不同的时钟源来驱动系统时钟四种不同的时钟源来驱动系统时钟,芯片复位后芯片复位后,默认使用默认使用MSI(4MHz)作为系统时钟源作为系统时钟源,以使得芯片内以使得芯片内部程序开始运行部程序开始运行,之后由程序初始化时钟系统之后由程序初始化时钟系统。嵌入式系统及应用嵌入式系统及应用第第6 6页页 共共1010页页11.1.2 时钟模块寄
6、存器及编程实例时钟模块寄存器及编程实例1时钟模块寄存器简介时钟模块寄存器简介制作构件要制作构件要 先先 了解编程所涉及的寄存器了解编程所涉及的寄存器,在时钟系统模块中经常使用到的寄存器有时在时钟系统模块中经常使用到的寄存器有时钟控制寄存器钟控制寄存器、时钟配置寄存器时钟配置寄存器、PLL配置寄存器配置寄存器、时钟中断使能寄存器等时钟中断使能寄存器等。通过对其中寄存器信息的读写通过对其中寄存器信息的读写,可以选择时钟源可以选择时钟源、配置时钟频率配置时钟频率,以及开启时钟中断以及开启时钟中断等等。系统时钟寄存器简介如下表所示系统时钟寄存器简介如下表所示。详细说明见电子资源中的补充阅读材料详细说明
7、见电子资源中的补充阅读材料。嵌入式系统及应用嵌入式系统及应用第第7 7页页 共共1010页页2RCC模块寄存器结构体类型模块寄存器结构体类型R C C 模 块 结 构 体 类 型 为模 块 结 构 体 类 型 为 R C C _ T y p e D e f,在 芯 片 头 文 件在 芯 片 头 文 件(“.03_MCUstartup STM32L431xx.h”)中定义中定义。嵌入式系统及应用嵌入式系统及应用第第8 8页页 共共1010页页3时钟模块编程实例时钟模块编程实例本节测试实例本节测试实例以内部以内部MSI时钟作时钟作为时钟源驱动系统时钟为时钟源驱动系统时钟,设置后的系设置后的系统时钟
8、频率为统时钟频率为48MHz,步骤如下:步骤如下:(1)使能使能MSI时钟时钟。即将时钟控即将时钟控制 寄 存 器制 寄 存 器(R C C _ C R)的 第的 第 0 位位(MSION位位)标志位置为标志位置为1。(2)复位配置寄存器复位配置寄存器(3)复 位 控 制 寄 存 器 中 的复 位 控 制 寄 存 器 中 的PLLON、HSEON、HSION和和CSSON位位。即即时钟控制寄存器时钟控制寄存器RCC_CR的第的第24位位、16位位、8位和位和19位位。嵌入式系统及应用嵌入式系统及应用第第9 9页页 共共1010页页(4)复 位复 位 P L L 配 置 寄 存 器配 置 寄 存
9、 器RCC_PLLCFGR,复位值是复位值是0X08(5)复位时钟控制寄存器的复位时钟控制寄存器的HSEBYP位位。HSEBYP位复位表示位复位表示不使用外部时钟不使用外部时钟,HSEBYP位必须位必须在在HSEON禁用情况下才能修改禁用情况下才能修改。(6)禁用所有中断禁用所有中断。(7)系统时钟配置函数系统时钟配置函数,配置配置时钟时钟。在系统配置函数里面主要做在系统配置函数里面主要做的工作是:使能电源接口时钟并配的工作是:使能电源接口时钟并配置电源控制寄存器置电源控制寄存器1,将将PWR_CR1的第的第0位置为位置为1供后续供后续Flash擦除或编擦除或编程操作程操作。(8)中断向量中断向量表表重定向重定向。嵌入式系统及应用嵌入式系统及应用谢谢!谢谢!第第1010页页 共共1010页页