通常情况下,对于一些成熟的STM32开发板,在其电路原理图的设计中,MCU外接了两个晶振。一个是低速晶振 32.768kHz,另一个是高速晶振 8MHZ。下文探讨二者的作用。

文章目录

  • 1. STM32 原理图
  • 2. CubeMX 时钟配置图
    • 2.1 低速晶振 32.768kHz
    • 2.2 高速晶振 8MHZ
  • 3. 参考文献

1. STM32 原理图

通常情况下,一些成熟的开发板在对STM32芯片进行原理图设计时,会使用两个晶振,如下图:

在进行晶振贴片时,由于晶振的体积比四周电阻体积大很多,晶振会占用较多的空间。如下图:


这对我们制作一些超小型电路板是不利的,因为板子空间有限。为此,我们需要理解这两个晶振的作用,尤其是低速晶振 32.768kHz,对其适当取舍。

2. CubeMX 时钟配置图

在STM32官方推荐的开发工具CubeMX中,我们可以直观的看到MCU的时钟配置图。在图中可以看到芯片的时钟配置情况,同时也可以看到低速晶振 32.768kHz 和高速晶振 8MHZ的入口。如下图左侧红框:

2.1 低速晶振 32.768kHz

从图中可以看出,低速晶振 32.768kHz 连接LSE(low-speed external clock signal),最终到达RTC(real-time clock)。

RTC 是一个独立的定时器 1 。从 real-time clock(实时时钟)四字可以理解,RTC可以为系统实时记录当前系统时间和日期,不管芯片有没有掉电。如果想要使用 RTC 实时记录系统时间,芯片需要接入额外备用电源,通常为纽扣电池。这样以来,RTC 在芯片掉电后,可以由电池供电继续运行 2

对于掉电后不需要记录系统时间的电路板,我们将低速晶振 32.768kHz 舍去,节约板子空间,精简电路设计。

2.2 高速晶振 8MHZ

从图中可以看出,高速晶振 8MHz 连接HSE(high-speed external clock signal),最终到达SYSCLK(system clock)。

SYSCLK 是系统时钟,为芯片内部各大模块的运转提供动力,不可缺少。高速晶振 8MHz 作为系统时钟的来源,可以由芯片内部的 HSI RC 时钟源或芯片外部的 独立时钟源 提供。这篇文章3提到在使用芯片内部的 HSI RC 时钟源做为系统时钟时,发现时钟有偏差,导致串口设备无法使用。由于芯片内部的 HSI RC 时钟源不够精准,我们通常采用外部独立时钟源来来为芯片提供系统时钟。

对于 STM32 电路板,外部高速晶振 8MHz 需要保留,为芯片提供系统时钟,使芯片能够正常工作。

3. 参考文献


  1. 【STM32】RTC实时时钟,步骤超细详解,一文看懂RTC ↩︎

  2. RTC实时时钟实验(低功耗、纽扣电池供电) ↩︎

  3. STM32 HSI时钟偏差问题 ↩︎

STM32 两个晶振的作用相关推荐

  1. stm32启用内部晶振(stm32设置外部晶振)

    STM32中的晶振电路有什么作用 stm32  有两个可接入的外部晶振,自己内部也有低俗的晶振.举个例子,手册也有说明低速主要给RTC使用了,高速是给一些外设及内核提供时钟元,内部的主要是给看门狗用或 ...

  2. STM32外部高速晶振不起振的故障分析

    STM32外部高速晶振不起振的故障分析 一.故障背景 网上售卖的STM32F103C8T6的核心板如图1所示,由于STM32F103C8T6最小系统核心板的采购成本高达20元/块至40元/块,为了降低 ...

  3. STM32的RTC晶振不起振的原因及解决方法

    STM32外部晶振不起振 使用STM32cubemx生成工程换一个单片机的型号,晶振会启震, 使用STM32cubemx生成工程不起振,烧录标准库的程序后,晶振启震,再烧录STM32cubemx生成工 ...

  4. STM32 F103 外部晶振8M改为12M

    stm32 实现外部晶振变换有2种方法: 第一种修改系统库函数: 第一步,打开stm32f10x.h,将  #define HSE_VALUE    ((uint32_t)8000000)  修改为: ...

  5. 关于STM32外接12MHz晶振的处理办法

    关于STM32外接12MHz晶振的处理办法 http://www.amobbs.com/thread-4478412-1-1.html (出处: amoBBS 阿莫电子论坛) 由于STM32F10x库 ...

  6. stm32 外部8M晶振 改为12M的方法

    第一步,打开stm32f10x.h,将  #define HSE_VALUE    ((uint32_t)8000000)  修改为:  #define HSE_VALUE    ((uint32_t ...

  7. 一文搞懂晶振,晶振的作用和原理?

    什么是晶振?晶振是怎么制成的?晶振的内部结构,晶振的工作应用以及影响晶振频率相关的参数. 什么是晶振? 定义:晶振一般指石英晶体振荡器,也叫晶体振荡器. 晶体振荡器是一种使用逆压电效应的电子振荡器电路 ...

  8. C语言12M晶振,STM32将12M晶振换8M晶振后Keil及程序的相关设置

    外部从12M晶振换8M晶振,如果还想是72MHZ时钟,只需要改三个地方: 首先:stm32f10x.h和system_gd32f10x.c文件可以通过下图找到 /> 1.stm32f10x.h中 ...

  9. STM32 RTC 对晶振的要求实在不地道

    zhwxc 发表于 2008-8-19 18:00 ST MCU ←返回版面

最新文章

  1. powerdesigner使用vba脚本创建物理模型的表和列
  2. 动态规划和贪心算法的区别
  3. Javascript创建Silverlight Plugin以及自定义nonSilverlight和lowSilverlight样式
  4. excel办公常用的宏_让领导看傻!精美168套办公常用excel模板免费领
  5. python调用jenkinsAPI构建jenkins,并传递参数
  6. 深入Webpack-编写Loader
  7. 计算机学科 集体备课记录,信息技术学科组集体备课活动记录
  8. 526个儿童游戏APP应用音效游戏声音集合音效素材 Kids Game Sound Effects
  9. GF1_WFV(高分一号宽幅)GF6_WFV(高分六号宽幅)GF4(高分四号)CB04(中巴04星)免费下载方式简介
  10. 【jms】Listener method could not be invoked with incoming message
  11. JIRA消息通知打通钉钉群
  12. 强化学习入坑之路04
  13. 思科新版ccna认证网工一定要知道的PIM技术概述
  14. Python自动化测试框架
  15. Refused to display ‘https://xxx.com.cn‘ in a frame because it set ‘X-Frame-Options‘ to ‘sameorigin‘
  16. pandas基础篇一
  17. java短学期教师总结_一年级教师工作总结集锦五篇
  18. 首届智能网络产业论坛成都开幕 迅游科技抢先布局5G
  19. Postgres -- 如何解决除法中分母为 0 的问题
  20. 清楚了,为什么投简历没面试

热门文章

  1. Google创新机器
  2. 收支系统(超超超简版)1.0
  3. 需求与商业模式创新-需求6-涉众分析与硬采样
  4. android手机投屏电视用什么,华为手机哪一款最好用 华为手机投屏到电视的5种方法...
  5. mpvue的使用(一)必要的开发环境
  6. 关于CPU序列号的问题,以及如何获取×64下CPU的ProcessorID
  7. datatable render formatter
  8. appium 等待的3中方式:强制等待、隐式等待、显示等待
  9. 【SpringCloud系列】服务注册与发现 - Eureka Server源码分析(2)
  10. 一天的班上玩一直是想去干什么呢