Stm32复习之时钟系统
地点:南图
这部分的内容是整个STM32学习知识的核心,不管是什么微控制器处理器,时钟系统都是其核心类似于人之心脏,因此学好理解这一章节至关重要。
为了便于理解这一系统,将从以下几个层次来讲。(忘了是在哪儿看到的这么一句话,当你能对某人解释清楚某一部分知识,那么说明你已经完全掌握了它) 。
1、第一个层次:硬件
STM32的时钟源 可以有以下5个来源:
(1)HSI高速的内部时钟
8M的RC震荡时钟,相对于晶体振荡器精确度差些,因此在需要精确频率或定时的应用时,应选用HSE作为系统时钟。这个是在STM32内部的,在没有外接晶体振荡器的时候,系统的时钟就会用此作为时钟源。
(2)HSE高速的外部时钟
允许外接4~16M频率的晶体振荡器 ,相比于内部的RC晶体振荡器精确度高些。通常最小系统板上接的椭圆形扁平的就是8M的晶体谐振器。
(3)LSI低速的内部时钟
因为现阶段不会用到,所以没细看。大致功能是作为RTC的时钟源。
(4)LSE低速外部时钟
同(3)。
(5)外部的输入时钟
可以使用其他单片器或时钟电路的输入方波作为时钟源,接入的引脚是OSC_IN,输入的必须是占空比为50%的方波或三角波。
2、第二层次:时钟系统内的时钟源细分
这部分的分析从源头出发分析,着重分析系统时钟SYSCLK的来源。
(1)sysclk的时钟来源。(SYSCLK允许的最大频率是72MHZ)
有三个来源:
HSE:提供8MHZ频率给SYSCLK
HSI:同HSE
PLL :PLL是第二级的时钟源,他的时钟来源是HSE(HSE/2、HSE)或HSI(HSI/2),输出的频率是倍频之后的频率。
这部分的内容重点是SYSCLK的来源,SYSCLK的作用是直接作为外设和AHB总线的时钟源(这样表述好像有问题)。
(2) AHB时钟源(对应时钟频率HCLK)
来源是SYSCLK分频之后,因此频率最大的情况是1分频时即72MHz。AHB的作用是作为APB1和APB2的时钟源,以及8分频后作为Cortex的外部时钟(Systick)
(3)APB1低速时钟总线
APB1低速时钟总线的作用是作为挂载在上面的外设的时钟源,最大36MHz。
(4)APB2高速时钟总线
最大72Mhz。
3、重要外设时钟源分析
(1)定时器
高级定时器TIM1、TIM8是挂载在APB2上的,其他定时器TIM2~TIM7挂载在APB1上。值得注意的是定时器的时钟频率取决于分频系数,当分频系数为1时,则其时钟频率和相应总线频率相等,其他分频系数,时钟频率为总线频率的2倍。
Stm32复习之时钟系统的更多相关文章
- 嵌入式02 STM32 实验03 时钟系统
时钟系统是处理器的核心,所以认真学习时钟系统是必要的,有助于深入理解STM32. 由于STM32的外设很多,有的外设不需要太高的时钟频率,同一个电路,时钟越快功耗越大,同时抗电磁干扰能力也越弱,所以对 ...
- STM32时钟系统
一.在STM32中,有五个时钟源,为HSI.HSE.LSI.LSE.PLL. ①HSI是高速内部时钟,RC振荡器,频率为8MHz. ②HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率 ...
- STM32学习笔记:系统时钟和SysTick定时器
原文:http://blog.sina.com.cn/s/blog_49cb42490100s60d.html 1. STM32的时钟系统 在STM32中,一共有5个时钟源,分别是HSI.HS ...
- 关于STM32时钟系统
初学STM32,感觉最蛋疼的是它的时钟系统,每次看到它的那个时钟树就有点晕,虽然看了很多这方面的资料,甚至也已经写过很多STM32的模块代码,做过一些小项目,但一直还是对这一块模模糊糊,似懂非懂,所以 ...
- STM32(4)——系统时钟和SysTick
1.STM32的时钟系统 在STM32中,一共有5个时钟源,分别是HSI.HSE.LSI.LSE.PLL HSI是高速内部时钟,RC振荡器,频率为8MHz: HSE是高速外部时钟,可接石英/陶瓷谐振器 ...
- STM32入门系列-STM32时钟系统,STM32时钟树
时钟对于单片机来说是非常重要的,它为单片机工作提供一个稳定的机器周期从而使系统能够正常运行.时钟系统犹如人的心脏,一旦有问题整个系统就崩溃.我们知道STM32属于高级单片机,其内部有很多的外设,但不是 ...
- STM32的时钟系统RCC详细整理(转载)
一.综述: 1.时钟源 在 STM32 中,一共有 5 个时钟源,分别是 HSI . HSE . LSI . LSE . PLL . ①HSI 是高速内部时钟, RC 振荡器,频率为 8MHz : ② ...
- STM32必学的时钟系统
STM32的时钟系统 相较于51单片机,stm32的时钟系统可以说是非常复杂了,我们现在看下面的一张图: 上图说明了时钟的走向,是从左至右的从时钟源一步步的分配给外设时钟.需要注意的是,上图左侧一 ...
- STM32时钟系统之利用 systick 定时器来实现准确的延时。
本篇文章带着大家来认识一下 STM32 的时钟系统,以及利用 systick 定时器来实现一个比较准确的延时. 我们首先从时钟说起,时钟在MCU中的作用,就好比于人类的心脏一样不可或缺.STM32 的 ...
随机推荐
- koa-router 源码由浅入深的分析(7.4.0版本的)
首先简单的介绍下什么koa-router,为什么要使用它,可以简单看下上一篇文章. 了解koa-router 首先我们来看下koa-router的源码的基本结构如下,它是由两部分组成的: ------ ...
- Settings > Editor > Live Templates 中自定义快速输入
Settings > Editor > Live Templates 中自定义快速输入
- vs2017创建.net core 应用程序,发布到Linux
1.打开vs2017,创建.net core 应用程序 压缩上传到linux
- PHP 练习(新闻发布)
1.新闻发布主页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...
- IntelliJ IDEA 2018.3 重大升级,哪些功能打动了你?
前言 2018.11.28 IntelliJ IDEA 2018.3 正式版发布.对于一个忠实爱好者,迫不及待的我下载了最新版本来体验下.而且 IDEA 今年的第三次重大更新提供了不容错过的显著功能! ...
- 对于for循环中使用let或var时,i的作用域范围的记录
在for循环中使用let时,结果如下 for内部定义的i在循环结束后不会覆盖外部的i 在for循环中使用var,且不控制i的作用域时,结果如下 第一个for循环内部定义的i并不会创建,而是直接使用外部 ...
- python操作MONGODB数据库,提取部分数据再存储
目标:从一个数据库中提取几个集合中的部分数据,组合起来一共一万条.几个集合,不足一千条数据的集合就全部提取,够一千条的就用一万减去不足一千的,再除以大于一千的集合个数,得到的值即为所需提取文档的个数. ...
- 【学习总结】GirlsInAI ML-diary day-9-dict字典
[学习总结]GirlsInAI ML-diary 总 原博github链接-day9 认识dict字典 新的数据类型dict. dict全称dictionary,在其他语言中也称为map,使用键-值( ...
- 关于vue-cli的项目结构【转】
一.总体框架 一个vue-cli的项目结构如下,其中src文件夹是需要掌握的,所以本文也重点讲解其中的文件,至于其他相关文件,了解一下即可. vue-cli项目总体结构 二.文件结构细分 1.buil ...
- Scrapy-redis 组件
scrapy-redis 简介 scrapy-redis是scrapy框架基于redis数据库的组件,用于scrapy项目的分布式开发和部署. 特征 分布式爬取 可以启动多个spider工程,相互之间 ...