首页 > 其他分享 >stm32系统时钟RCC简析

stm32系统时钟RCC简析

时间:2024-06-12 11:24:43浏览次数:8  
标签:分频 分频器 定时器 stm32 简析 倍频 RCC 外设 时钟

一 概念

STM32本身十分复杂,外设非常多  但我们实际使用的时候只会用到有限的几个外设,使用任何外设都需要时钟才能启动,但并不是所有的外设都需要系统时钟那么高的频率,为了兼容不同速度的设备,有些高速,有些低速,如果都用高速时钟,势必造成浪费   并且,同一个电路,时钟越快功耗越快,同时抗电磁干扰能力也就越弱,所以较为复杂的MCU都是采用多时钟源的方法来解决这些问题。所以便有了STM32的时钟系统和时钟树,。

 

二 时钟源

STM32 有4个独立时钟源:HSI、HSE、LSI、LSE。
①、HSI是高速内部时钟,RC振荡器,频率为8MHz,精度不高。! m+ G5 `+ H8 D* V6 E4 n
②、HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~16MHz。
③、LSI是低速内部时钟,RC振荡器,频率为40kHz,提供低功耗时钟。 
④、LSE是低速外部时钟,接频率为32.768kHz的石英晶体。


其中LSI是作为IWDGCLK(独立看门狗)时钟源和RTC时钟源 而独立使用

而HSI高速内部时钟 HSE高速外部时钟 PLL锁相环时钟  这三个经过分频或者倍频 作为系统时钟来使用:

PLL为锁相环倍频输出,其时钟输入源可选择为HSI/2、HSE或者HSE/2。倍频可选择为2~16倍,但是其输出频率最大不得超过72MHz。  通过倍频之后作为系统时钟的时钟源。

 

三 分频方式

 

 系统时钟SYSCLK通过AHB分频器分频后送给各模块使用,AHB分频器可选择1、2、4、8、16、64、128、256、512分频。其中AHB分频器输出的时钟送给5大模块使用:

 ①内核总线:送给AHB总线、内核、内存和DMA使用的HCLK时钟。
 ②Tick定时器:通过8分频后送给Cortex的系统定时器时钟。 1 P6 {  [5 J# z* `2 E" u/ p  H0 k% L
 ③I2S总线:直接送给Cortex的空闲运行时钟FCLK。 / O& \; E7 `, @. `
 ④APB1外设:送给APB1分频器。APB1分频器可选择1、2、4、8、16分频,其输出一路供APB1外设使用(PCLK1,最大频率36MHz),另一路送给通用定时器使用。该倍频器可选择1或者2倍频,时钟输出供定时器2-7使用。
 ⑤APB2外设:送给APB2分频器。APB2分频器可选择1、2、4、8、16分频,其输出一路供APB2外设使用(PCLK2,最大频率72MHz),另一路送给高级定时器。该倍频器可选择1或者2倍频,时钟输出供定时器1和定时器8使用。

如下图所示:

 

标签:分频,分频器,定时器,stm32,简析,倍频,RCC,外设,时钟
From: https://www.cnblogs.com/dylancao/p/18243563

相关文章

  • 【STM32F1例程2】GPIO外部中断输入
    1.实验说明无需连外部杜邦线,下载程序,全速运行,按右边按键看到LEDD1(PB4引脚驱动)亮暗能变化一次2.主要代码先上main.c#include"delay.h"#include"sys.h"//外部中断0配置,PA0脚产生外部中断是外部中断0voidEXTI0_Config(void){ EXTI_InitTypeDefEXTI_InitStructur......
  • 【STM32F1例程3】ADC实验
    1.实验说明 PA4口作为ADC采集口,PA4口接地或者接3.3V。下载运行程序,PA4口接地,会发现VolDta值为0,然后把PA4口接3.3V,会发现VolDta值为33002.主要程序直接上main.c#include"delay.h"#include"sys.h"//ADC配置,ADC1通道4voidADC_Config_Init(void){ ADC_InitTypeDef......
  • 基于STM32开发的智能鱼缸控制系统
    目录引言环境准备智能鱼缸控制系统基础代码实现:实现智能鱼缸控制系统4.1水温传感器数据读取4.2水泵与加热器控制4.3水位传感器数据读取4.4用户界面与数据可视化应用场景:水族箱管理与优化问题解决方案与优化收尾与总结1.引言智能鱼缸控制系统在维护水族箱生态平衡和......
  • STM32单片机开发入门(三) 万用表的介绍及使用方法
    文章目录一.概要二.电阻测量三.直流电压(单片机小系统板)电压的测量四.交流电压的测量五.二极管(发光二极管)正负极的测量六.电流(单片机小系统板)功耗的测量七.电路(单片机小系统板)通断检测八.数字万用表使用注意事项小结一.概要我们说的万用表一般都是数字式万用表......
  • STM32 + RT-Thread + LVGL
    一、基本信息MCU:STM32F103ZET6RT-Thread:5.0.2LVGL:8.3.11LCD:ST7735s编译环境:RTThreadstudio二、LVGL移植要求16、32或64位微控制器或处理器建议速度大于16MHz闪存/ROM:>64kB(建议180kB)内存:8kB(建议24kB)1个帧缓冲器:在MCU、外部RAM或显示控制器中LVGL的......
  • QT工具uic、moc、rcc
    QT中的moc、uic、rcc在学习QT的过程中接触到了moc、uic、rcc这几个名词moc(Meta-ObjectCompiler),元对象编译器,用于处理QT拓展的C++语法uic(UserInterfaceCompiler),用户界面编译器,将根据.ui文件生成相应的.h文件,例如根据mainwindow.ui生成ui_mainwindow.hrcc(ResourceComp......
  • 简单解释STM32中断
    中断作用:高效处理紧急程序,并且不会占用CPU资源。 在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行即打断CPU执行正常的程序,转而处理紧急程序,然后返回原暂停的程序继续运行; ......
  • 杂项——编码器控制小车走固定距离(stm32)
    先算出轮子转一周编码器的数值(假设为1000),再算出轮子一周的周长(假设为10cm)。那么要前进1米只需要转1米/10cm等于10圈,10圈编码器数值为10000。我们只需要在代码里面写出编码器数值如果<10000则让小车前进,如果>10000让小车停止,即可实现控制小车走固定的距离编码器.c函数(编码器......
  • STM32单片机开发入门(四) 示波器的介绍及使用方法
    文章目录一.概要二.探头补偿校准三.电压测量四.波形的测量与分析五.串口通讯波形测量解析六.触发捕捉瞬时信号七.小结一.概要示波器主要用于观察电信号的波形变化。在显示屏上,工程师可以直接看到电信号的全过程,从而进行定性和定量的分析。这种仪器通常用于显示电压......
  • 3.7v可充电锂电池,能否直接给STM32F1芯片用?
    原文链接:https://www.amobbs.com/thread-5678061-1-1.html 问:就是18650锂电池,单节,或者那种聚合物锂电池,都是两三千毫安时的。第一个为题:能否直接给STM32F103供电?第二个问题:板子上自带1117-3.3,我直接锂电池接过去,也能输出3.3V,压差可以这么小么?第三个问题:其他的电压转换芯片......