MCU有各种各样的外设:定时器和看门狗、UART收发器、I2C总线、SPI总线、GPIO、ADC、SW-DP调试端口、温度传感器等,之所以能有条不紊的稳定运行,都离不开统一的时钟。因为时钟是MCU的脉搏,CPU执行指令、访问数据、DMA搬运、状态变换等动作都离不开系统时钟,串口数据收发、A/D转换、定时器计数等外设工作也是在时钟的驱动下完成的。

图1. MM32F003时钟源

另一方面,如果时钟系统出现问题,例如振荡器不起振、振荡不稳、停振等,那后果也是致命的。以下我们以32位arm Cortex M0核心的MM32F003为例,介绍MCU外接晶振究竟该如何选择。

MCU数据表中的建议

系统时钟一般由时钟源(Clock source),总线时钟(Bus clock)和外设时钟(Peripheral Clock)。MM32F003时钟源包括三部分:高速内部时钟(HSI)、低速内部时钟(LSI)、高速外部时钟(HSE)。其中,HSE振荡器的频率位2-24MHz。

图2. MM32F003数据表提供的HSE 2-24MHz特性

根据MM32F003数据表,高速外部时钟(HSE)可以使用一个2~24MHz的晶体/陶瓷谐振器构成的振荡器产生,布线时谐振器和负载电容必须尽可能地靠近振荡器的引脚,以减小输出失真和启动时的稳定时间。

振荡元件的选择

MM32F003数据所给出了典型外部元器件,以及通过综合特性评估得到的结果。具体应用中,需要我们根据晶体/陶瓷谐振器制造商提供的详细参数 (频率、封装、精度等)设计振荡电路。一般情况下,这些数据由综合评估得出,不在生产中测试。

图3. 8MHz石英晶体谐振器的典型应用

首先,我们应该应该确定谐振器应该采用石英晶体谐振器、晶体振荡器,还是陶瓷谐振器?按照MCU厂商的图示,内部已经集成了两个电容器的谐振器一般是陶瓷谐振器,或者晶体振荡器。不过,前者频率精度及频率稳定性是否符合终端产品要求需要仔细考虑,后者的价格估计会让大家望而却步。

这里,我们选择了8MHz采用石英晶体谐振器(Xtal),因为同时符合性能、价格考量。

接下来,我们构建振荡器电路。根据MM32F003数据表建议,对于CL1和CL2使用高质量的、为高频应用而设计的 (典型值为)5pF~25pF之间的瓷介电容器,并挑选符合要求的晶体或谐振器。通常CL1和CL2具有相同参数。晶体制造商通常以CL1和CL2的串行组合给出负载电容的参数。在选择CL1和CL2时,PCB和MCU引脚的容抗应该考虑在内(可以粗略地把引脚与PCB板的电容按10pF估计)。

RF一般单片机会给出,不需要自己计算或测试。相对较低的RF电阻值,能够可以为避免在潮湿环境下使用时所产生的问题提供保护,这种环境下产生的泄漏和偏置条件都发生了变化。但是,如果MCU是应用在恶劣的潮湿条件时,设计时需要把这个参数考虑进去。

tSU(HSE)是启动时间,是从软件使能HSE开始测量,直至得到稳定的8MHz振荡这段时间。这个数值是在一个标准的晶体谐振器上测量得到,它可能因晶体制造商的不同而变化较大。

有些MCU还有一个低速外部时钟(LSE),这就需要再外接一个低速晶振,例如32.768kHz晶振。MM32F003没有这个接口,我们就不讨论了。

文章整理自网络,如有侵权,请联系删除!参考原文。

单片机MCU外部晶振的选择相关推荐

  1. stm32不使用外部晶振管脚怎么处理_外部晶体振荡器被旁路的原理和原因

    单片机的外部晶振稳定,受温度,湿度等环境因素影响比内部振荡器小,精度比较高.而且当设计需要降低功耗时,比如说便携式仪表等,就需要外设晶振,因为内部振荡器不能根据需要停止,而外部晶振可以适时停止,从而进 ...

  2. 怎样辨别内部晶振与外部晶振

    一.单片机晶振简单介绍 单片机晶振是单片机内部电路产生单片机所需的时钟频率的部件,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率.晶振 ...

  3. 单片机外部晶振-XTAL和EXTAL引脚

    文章目录 1 单片机外部晶振-XTAL和EXTAL引脚 1.1 有源晶振 1.2 无源晶振 1.3 问答时间 - 传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目 ...

  4. (转载)STM32 外部晶振电路设计和匹配

    (转载来自:https://blog.csdn.net/Seaman_TY/article/details/93090532) STM32的时钟源 STM32F103有两种主时钟方案,一个是依靠内部R ...

  5. FAQ0131 AT32操作擦除 SPIM 必须注意事项说明FAQ0135-AT32MCU 时钟配置错误或晶振大小选择错误导致异常

    AT32MCU 时钟配置错误或晶振大小选择错误导致异常 Questions:在时钟配置错误或晶振大小选择错误的情况下,下载代码到开发板导致无法继续进行debug或再次下载的一系列异常情况.如场景一:自 ...

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

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

  7. 让Atmega8A-PU 支持外部晶振的熔丝设置

    这段时间搞了个arduino玩,感觉买的板子不过瘾,照着网上的教程折腾Arduino最小系统,过程非常曲折,现将部分内容总结记录下来,以备日后查阅. 参考文章:Arduino 1.0--让最小系统更简 ...

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

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

  9. stc8实用外部晶振程序

    stc8实用外部晶振程序@ stc8实用外部晶振程序(这里写自`#include "stc8f.h" #include "intrins.h" //测试工作频率 ...

最新文章

  1. 2019cvpr oral | 实时自适应立体匹配
  2. python如何关闭窗口仍能运行_Python在退出时关闭自己的CMD shell窗口
  3. 【ROS学习笔记】(十一)launch启动文件的使用方法
  4. 《信息安全系统设计基础》实验五 简单嵌入式WEB服务器实验
  5. 收集一些Qt学习网站
  6. 找网络高手联系方式_怎么才能联系到网络高手(找网络高手联系方式)
  7. 计算机论文摘要200字模板,设计论文摘要万能模板_论文摘要万能模板_论文摘要200字模板...
  8. Easyui 官网网址
  9. YOLOv5电车识别 电瓶车识别
  10. 推杆如妻子,发球木如情人,短铁如父母,球道木如朋友,长铁如兄弟
  11. Java 解析xml 使用SAXReader获取所有标签的key和value的代码实例
  12. java 多张jpg合成tif后避免tif文件过大的方法
  13. Java设计登录界面——GUI
  14. matplotlib——pyplot和pylab区别
  15. hype3 响应布局_使用Hype 3的基于时间轴的Web动画
  16. 分享 :几个超级实用的excel小技巧
  17. 不好好做图的NSC系列(七):跟着cell学习用散点图展示韦恩图的效果
  18. JavaScript双层循环
  19. python在线爬取数据导入Neo4j创建知识图谱
  20. Android IOS WebRTC 音视频开发总结(六六)-- 三个角度分析美女视频直播这个行业...

热门文章

  1. 计算机应用电工技术,计算机应用电工技术.pdf
  2. 联发科4G安卓工控触摸主板
  3. CRM,不止是一套软件!
  4. pip安装不是包名__一蓑烟雨任平生
  5. Smooze for Mac v1.9.24 Mac鼠标平滑滚动神器
  6. 保研面试 算法题_百度软件工程师面试经验
  7. Android渐变界面设计
  8. 爱奇艺多模态视频人物识别挑战赛项目总结
  9. 关于XC7K325T设计总结(填坑)
  10. DouPHP模块化企业网站管理系统源码