刚入STM32 用了也有一段时间了,先做了中断,CAN,SPI。都是跟着网上的例子直接粘贴外设的初始化代码,看的大概能懂,但是时钟一直迷迷糊糊,不清不楚。
STM32为了实现低功耗,而设计的功能完善构成复杂的时钟系统,称之时钟树。使外设功能的时钟可自配置。因为STM32外设众多,而不同的项目用到的外设参差不齐,所以可控的时钟可以实现降低产品功耗。
所有的外设在使用之前都必须设置时钟信号,才可以正常工作。以STM32F103C8T6时钟树为例,如下图所示:
图7和图8道理一样的,大家觉得那个容易理解就看那个图
图8
STM32的四个时钟源
外部时钟
<1>高速外部时钟(HSE):外部时钟源,晶振频率可取范围为4~16MHz,我们一般采用8MHz的晶振。
<2>低速外部时钟(LSE):外部时钟源,主要提供给实时时钟模块,所以一般采用32.768KHz。
内部时钟
<3>高速内部时钟(HSI):由内部RC振荡器产生,频率为8MHz,但不稳定。
<4>低速内部时钟(LSI):由内部RC振荡器产生,也主要提供给实时时钟模块,频率大约为40KHz。
以最常用的高速外部时钟(HSE)为例
<1>左边红色框框1 两个外部引脚接8M晶振的两端。
<2>8M时钟遇到第一个分频器PLLXTPRE,也就是HSE后面的第一个节点,我们不分频。
<3>时钟来到PLL Source Mux,可选输入的时钟信号有外部高速时钟(HSE)和内部高速时钟(HSI),选择HSE。
<4>接着信号走到锁相环PLL,具有倍频作用,我们选择倍频因子(PLL Mul),可取值2,3,...14,15,16,我们选择9倍频。现在时钟信号为8*9=72M。
<5>来到系统时钟源输入选择,可选时钟有HSE(8M)、HSI(8M)和经过倍频的PLL CLK(72M),选择PLL CLK作为系统时钟,此时系统时钟为72M。
<6>系统时钟(SYSCLK)来到AHB预分频器,可选分频系数:1,2,4,8,16,32,64,128,256。选择不分频,直接来到挂载低速外设的(APB1)PCLK1和挂载高速外设的(APB2)PCLK2。
<7>PCLK1低速外设时钟的最大频率为36M,所以最低进行2分频。PCLK2高速外设时钟的最大频率是72M,可选择不分频。
选择使用HSE也是因为外部时钟更稳定精准,经过倍频给STYCLK提供最大的时钟频率,发挥CPU的最优性能。了解了时钟树,在使用各个外设的时候就明白时钟信号的来源了。记得初始化外设一定要使能相应的时钟。
上一篇:STM32 易阅读的代码风格
下一篇:STM32是如何进入中断服务函数xxx_IRQHandler的
推荐阅读
史海拾趣
德欣(COV)公司自创立之初,就致力于压敏电阻器、SPD防雷芯片、智能过压保护器等核心电子元件的研发与生产。公司创始人凭借对电子行业发展趋势的精准判断,以及对技术创新的执着追求,成功研发出了一系列具有竞争力的产品。这些产品不仅满足了当时市场的需求,也为德欣公司在电子行业打下了坚实的基础。
作为一家以开源硬件为核心的公司,BeagleBoard深知教育和人才培养的重要性。他们积极与学校、教育机构合作,提供教育支持和培训服务,帮助更多的学生了解嵌入式系统开发的魅力。同时,公司还设立了奖学金和竞赛项目,鼓励年轻开发者积极参与创新实践,为行业培养了一批批优秀的人才。
在B&F公司的早期发展阶段,Peter Funk和Dirk Breitkreutz先生意识到,要想在竞争激烈的航空市场中脱颖而出,必须依赖技术创新。他们决定研发一款具有独特设计和高性能的轻型飞机——FK系列。这款飞机在电子系统上进行了大量创新,如采用先进的导航系统和通信设备,提高了飞行的安全性和舒适性。这些技术创新为B&F公司赢得了良好的声誉,也为公司的快速发展奠定了基础。
在加入Telit后,GainSpan的技术和产品迅速在全球范围内得到推广和应用。Telit凭借其强大的市场网络和品牌影响力,将GainSpan的低功耗WiFi模组带到了更多的国家和地区。特别是在北美、欧洲和亚洲等物联网市场发展迅速的地区,GainSpan的技术和产品更是成为了众多企业和项目的首选。通过全球化布局,Telit进一步巩固了其在物联网市场的领先地位。
随着技术的不断进步和市场的不断扩大,Datapro International Inc公司开始寻求新的市场机会。他们发现,随着企业信息化程度的提高,对数据存储和处理的需求也越来越大。于是,公司决定进军企业市场,并开发了一系列针对企业的数据存储解决方案。
在拓展企业市场的过程中,Datapro International Inc公司面临着来自竞争对手的激烈竞争。然而,他们凭借卓越的产品质量、专业的技术服务和灵活的商业模式,成功赢得了客户的信任和支持。随着企业市场的不断拓展,Datapro International Inc公司的业务规模也逐渐扩大。
摘 要:卷积码是一种性能优良的差错控制编码。本文在阐述卷积 码编解码器基本工作原理的基础上,提出了在MAX+PlusⅡ开发平台上基于VHDL语言设计 (2,1,6)卷 积码编解码器的方法。仿真实验结果表明了该编解码器的正确性和合理性。关键词:卷积 ...… 查看全部问答∨ |
|
Make: The target "D:\\2005122301\\main.o" is up to date. Make: The target "D:\\2005122301\\t01.cof" is out of date. Executing: "C:\\Program Files\\Microchip\\MCC18\\bin\\mplink.exe" /l"C:\\Program Files\\Microchip\ ...… 查看全部问答∨ |