STM32单片机:外设时钟(STM32L4xx)

通过前面的文章我们知道:HSE,HSI16,MSI,PLLCLK这几个时钟源可以作为系统主时钟,如下图:

STM32L4xx系列单片机有3个外设时钟:**AHB-HCLK,APB1-PCLK1,APB2-PCLK2,**这些时钟为绝大多数的片上外设提供时钟源。

这几个时钟的层级结构如下:


SYSCLK ===> / RCC_CFGR.HPRE3:0 ===>【AHB-HCLK】

系统时钟SYSCLK 通过寄存器RCC_CFGRHPRE3:0 定义分频系数分频生成外设时钟**AHB-HCLK,**其分频系数为:1, 2, 4, 8, 16, 64, 128, 256, 512


AHB-HCLK ===> / RCC_CFGR.PPRE22:0 ===> APB2-PCLK2

时钟AHB-HCLK 通过寄存器RCC_CFGRPPRE22:0 定义分频系数分频生成外设时钟**APB2-PCLK2,**其分频系数为:1, 2, 4, 8, 16


AHB-HCLK ===> / RCC_CFGR.PPRE12:0 ===> APB1-PCLK1

时钟AHB-HCLK 通过寄存器RCC_CFGRPPRE12:0 定义分频系数分频生成外设时钟**APB1-PCLK1,**其分频系数为:1, 2, 4, 8, 16


芯片内的大部分外设的时钟均由以上3个时钟来提供,具体哪个外设对应哪个时钟,可以查阅芯片手册,比如:

在这个表格里可以找到某外设的时钟来自哪个时钟源,然后在以下几个寄存器中找到对应的外设时钟使能位,将其置位后,对应的外设时钟信号被使能。

AHB-HCLK作为时钟源的外设时钟使能控制:

**RCC_AHB1ENR:**AHB1 外设时钟使能寄存器

**RCC_AHB2ENR:**AHB2 外设时钟使能寄存器

**RCC_AHB3ENR:**AHB3 外设时钟使能寄存器

APB1-PCLK1作为时钟源的外设时钟使能控制:

RCC_APB1ENR1:APB1 外设时钟使能寄存器 1

RCC_APB1ENR2:APB1 外设时钟使能寄存器 2

APB2-PCLK2作为时钟源的外设时钟使能控制:

RCC_APB2ENR: APB2 外设时钟使能寄存器


比如上图中红框部分的定时器TIM2,如果要使能TIM2的时钟,由图中信息可知TIM2由APB1-PCLK1来提供时钟,所以找到寄存器RCC_APB1ENR1的说明:

RCC_APB1ENR1.TIM2EN 置位即可使能TIM2的时钟:

RCC_APB1ENR1 |= RCC_APB1ENR1_TIM2EN;

相关推荐
单片机仿真设计12 分钟前
基于 STM32 的家庭环境监测与火灾报警灭火系统(Proteus 仿真)
stm32·单片机·嵌入式硬件·proteus·毕设
深圳市恒锐丰科技杨生23 分钟前
EG4321 锂电池 CC‑CV 充电管理控制器|屹晶 EGmicro
嵌入式硬件·硬件工程
辰域电子1 小时前
STM32项目开源:智能万年历/智能闹钟设计(代码+原理图+仿真)
stm32·单片机·嵌入式硬件·开源·proteus
一条破秋裤2 小时前
STM32F103 RCC 第一层复习:时钟树、外设时钟与重复测试
stm32·单片机·嵌入式硬件
Kuakewei8883 小时前
PD/QC快充协议诱骗芯片设计手册:Type-C受电端完整应用方案
嵌入式硬件
smartpi_ai3 小时前
原理图上的 1.2V 是输入还是输出?蜂鸟 M 裸芯供电架构、CORE 滤波设计与外围器件三规矩
单片机·嵌入式硬件·架构
扬扬的三格电力笔记4 小时前
编码器信号远距离传输总出错?聊聊 HTL/TTL 转光纤模块,解决编码器干扰与距离难题
网络·嵌入式硬件
一条破秋裤4 小时前
STM32 单片机两层学习规划
stm32·单片机·学习
2601_950790685 小时前
国产单片机厂家推荐:用统一回复协议筛选候选
单片机·嵌入式硬件
天空'之城5 小时前
单片机基础核心知识点汇总(三十二)
单片机·嵌入式硬件