当前位置:首页 > > 玩转单片机与嵌入式
[导读]▼点击下方名片,关注公众号▼大家好,很高兴和各位一起分享我的第27篇原创文章,喜欢和支持我的工程师,一定记得给我点赞、收藏、分享。加微信[xyzn3333]与作者沟通交流,免费获取更多单片机与嵌入式的海量电子资料。欢迎关注【玩转单片机与嵌入式】公众号,回复关键字获取更多免费资料。...

点击下方名片,关注公众号

单片机与嵌入式" data-alias="xyzn003" data-signature="专注单片机、嵌入式、学习资料、最新设计、案例等。以单片机为起点,带你玩转单片机、嵌入式设计。" data-from="0">大家好,很高兴和各位一起分享我的第27篇原创文章,喜欢和支持我的工程师,一定记得给我点赞、收藏、分享。

加微信[xyzn3333]与作者沟通交流,免费获取更多单片机与嵌入式的海量电子资料。

欢迎关注【玩转单片机与嵌入式】公众号,回复关键字获取更多免费资料。


回复【电容】,获取关于电容文章相关的内容;

回复【阻抗匹配】,获取电磁兼容性、阻抗匹配相关的资料

回复【资料】,获取全部电子设计、单片机开发相关的资料

回复【终端电阻】,获取CAN终端电阻相关的资料

回复【单片机】,获取单片机全套视频教程和参考设计

回复【STM32】,获取STM32相关设计和视频教程

回复【PCB】,获取PCB设计相关的资料

回复【硬件知识】、【硬件设计】,获取硬件开发工程必备手册

回复【经典电路】,获取5000个经典电路

回复【论文】,获取毕业设计、电子竞赛、学术专业等相关论文资料

…………

欢迎关注【玩转单片机与嵌入式】公众号,本公众号会以连载的形式对电容进行深入讲解,欢迎持续关注。








STM32芯片按照复位区域的范围分类,大概可以分为系统复位,电源复位,备份域复位,内核复位;



众所周知STM32有5个时钟源HSI、HSE、LSI、LSE、PLL;其实他只有四个,因为从上图中可以看到PLL都是由HSI或HSE提供的。


其中,高速时钟(HSE和HSI)提供给芯片主体的主时钟.低速时钟(LSE和LSI)只是提供给芯片中的RTC(实时时钟)及独立看门狗使用,图中可以看出高速时钟也可以提供给RTC。


内部时钟是在芯片内部RC振荡器产生的,起振较快,所以时钟在芯片刚上电的时候,默认使用内部高速时钟。而外部时钟信号是由外部的晶振输入的,在精度和稳定性上都有很大优势,所以上电之后我们再通过软件配置,转而采用外部时钟信号.


时钟源

介绍

高速外部时钟(HSE)

以外部晶振作时钟源,晶振频率可取范围为4~16MHz,我们一般采用8MHz的晶振高速内部时钟(HSI)

由内部RC振荡器产生,频率为8MHz,但不稳定低速外部时钟(LSE)

以外部晶振作时钟源,主要提供给实时时钟模块,所以一般采用32.768KHz低速内部时钟(LSI)

由内部RC振荡器产生,也主要提供给实时时钟模块,频率大约为40KHz

OSC_OUT和OSC_IN开始,这两个引脚分别接到外部晶振8MHz,第一个分频器PLLXTPRE,遇到开关PLLSRC(PLL entry clock source),我们可以选择其输出,输出为外部高速时钟(HSE)或是内部高速时钟(HSI)。这里选择输出为HSE,接着遇到锁相环PLL,具有倍频作用,在这里我们可以输入倍频因子PLLMUL,要是想超频,就得在这个寄存器上做手脚啦。


经过PLL的时钟称为PLLCLK。倍频因子我们设定为9倍频,也就是说,经过PLL之后,我们的时钟从原来8MHz的 HSE变为72MHz的PLLCLK。紧接着又遇到了一个开关SW,经过这个开关之后就是STM32的系统时钟(SYSCLK)了。通过这个开关,可以切换SYSCLK的时钟源,可以选择为HSI、PLLCLK、HSE。


我们选择为PLLCLK时钟,所以SYSCLK就为72MHz了。PLLCLK在输入到SW前,还流向了USB预分频器,这个分频器输出为USB外设的时钟(USBCLK)。回到SYSCLK,SYSCLK经过AHB预分频器,分频后再输入到其它外设。


如输出到称为HCLK、FCLK的时钟,还直接输出到SDIO外设的SDIOCLK时钟、存储器控制器FSMC的FSMCCLK时钟,和作为APB1、APB2的预分频器的输入端。GPIO外设是挂载在APB2总线上的, APB2的时钟是APB2预分频器的输出,而APB2预分频器的时钟来源是AHB预分频器。因此,把APB2预分频器设置为不分频,那么我们就可以得到GPIO外设的时钟也等于HCLK,为72MHz了。


SYSCLK:系统时钟,STM32大部分器件的时钟来源。主要由AHB预分频器分配到各个部件。


HCLK:由AHB预分频器直接输出得到,它是高速总线AHB的时钟信号,提供给存储器,DMA及cortex内核,是cortex内核运行的时钟,cpu主频就是这个信号,它的大小与STM32运算速度,数据存取速度密切相关。


FCLK:同样由AHB预分频器输出得到,是内核的“自由运行时钟”。“自由”表现在它不来自时钟 HCLK,因此在HCLK时钟停止时 FCLK 也继续运行。它的存在,可以保证在处理器休眠时,也能够采样到中断和跟踪休眠事件 ,它与HCLK互相同步。


PCLK1:外设时钟,由APB1预分频器输出得到,最大频率为36MHz,提供给挂载在APB1总线上的外设,APB1总线上的外设如下:


PCLK2:外设时钟,由APB2预分频器输出得到,最大频率可为72MHz,提供给挂载在APB2总线上的外设,APB2总线上的外设如下:

End


限时免费扫码进群,交流更多行业技术




欢迎转发


每篇原创内容都是我们用心血换来的知识精华,如果您觉得本文有价值,欢迎转载分享;

欢迎加入


如果您对单片机及嵌入式设计感兴趣,欢迎加入我们的辩论探讨,加我微信【xyzn3333】。


往期推荐

【硬件设计】元器件选型——除了阻值,电阻的参数你还知道哪些?

【硬件设计】——电路中0欧电阻的作用吗?没你想的那么简单

硬件开发者之路之——电路稳定性简单解释

硬件开发者之路之——保护电路系列之过流过压过温保护

硬件设计之一——电源设计05:过电流能力

硬件设计之一——电源设计04:滤波电路

硬件设计之一——电源设计03:LDO设计

硬件设计之一——电源设计02:DCDC设计

硬件设计之一——电源设计01:电源防护


点个在看你最好看






本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭