单片机最小系统的电源部分,时钟以及复位时钟电路

前一篇介绍了单片机最小系统的电源部分,这期将介绍构成单片机最小系统的另外两部分,就是时钟以及复位。单片机最小系统的第二个内容就是时钟。

1.时钟电路

最小微控制器系统的第二个组件是时钟。 单片机的工作是面向任务的,即根据单片机FLASH中存储的二进制代码一步步执行。 此执行的参考时间是时钟。 有了时钟,微控制器就知道何时该做某事。 另外,有了时钟,单片机的核心就可以与外设同步。 举个通俗的例子,就像两个人约定每天上午10点打电话。 这就是时钟的同步。 作为用户,单片机需要工作,必须有时钟。 时钟就像人的心跳一样,必须持续跳动。

所有单片机的数据手册都会有与时钟相关的章节。 图3.1为STC8A8K64S4A12芯片手册中的系统时钟结构图。

图3.1STC8A8K64S4A12系统时钟图

图形分析:

①时钟源选择:从图中可以看出,产生主时钟MCLK有4种方式,即内部24MHz、外部晶振、外部时钟信号、内部32kHz;

②时钟分频:MCLK按分频后提供给MCU内核;

③时钟输出分频:MCLK分频后输出时钟;

④时钟输出引脚选择:可以选择从P1.5或P1.6输出时钟,供外部和内部设备使用;

⑤ 系统时钟SYSclk:单片机内核所需的时钟。 它决定了微控制器处理指令的速度。 频率越高,处理速度越快,但功耗也越高。 这应该更容易理解。 以俯卧撑为例。 A先生1秒可以做10个俯卧撑,B先生1秒可以做1个俯卧撑。 同时,假设1分钟,A先生可以做600个俯卧撑,而B先生只能做60个俯卧撑。 A先生的频率比B先生高,但A先生会消耗更多的热量。 因此,在选择时钟时,需要综合考虑运行速度和功耗,而不是单方面追求速度。 当然,如果不再考虑功耗的话,频率越高越好。 这样单片机的处理能力就会大大提高,但是频率能无限制地提高吗? 目前情况并非如此。 微控制器的手册将定义时钟的最大频率。 例如,STC8系列单片机的芯片手册有如下描述。

从描述中可以看出,STC8A8K64S4A12的时钟最高可达33MHz。 这里先说一下分频的概念,就是将输入时钟除以一个分频系数,得到输出频率。 例如输入频率为24MHz,分频系数为2,则输出频率为24/2=12MHz。 ARM系统中还有倍频的概念,即输入时钟经过分频系统倍频,得到输出频率。 这里有一个概念。

既然输入时钟有4种类型,那么如何选择呢? 表3.1可供参考。

图 3.1 输入时钟比较

内部RC

水晶

外部时钟输入

优势

①成本低,无需外围电路;

②节省PCB布局空间;

③ 增加I/O口数量

① 精度更高;

②时钟输出稳定;

③抗干扰能力好;

① 精度取决于外部时钟;

②单片机不需要单独的晶振电路;

缺点

① 准确度不高

② 容易受干扰(温漂/零点漂移)影响

①需要单独的晶振电路,价格昂贵;

② 占用PCB布局空间

③ 占用2个I/O口

① 还需要生成额外的时钟;

② 占用1个I/O口;

场合

① PCB空间有限时;

②应用环境无干扰源;

③ 有成本要求时;

④ I/O口不足时;

① 需要稳定的时钟输出时;

②当与其他芯片通信的时序要求较高时;

③成本要求不高时;

① 当多个芯片共享时钟以节省成本时;

② 作为从设备使用时;

接下来,我们将介绍在选择不同时钟时如何设计电路。

① 内部RC电路:

如果选择内部RC振荡电路,该引脚可以悬空或作为普通I/O口使用。 一般的单片机,​​上电复位后,默认使用内部IRC,一般可以通过下载软件切换或者通过程序控制。 STC单片机的寄存器说明如图3.2所示。 从IRC24MCR寄存器的描述来看,Bit7“ENIRC24M”是内部24MHz使能位。 查看复位后IRC24MCR寄存器的初始值,Bit7为1,如图3.3所示,验证了前面的说法。 单片机上电后,默认使用内部IRC。 所以如果使用内部RC时钟,该引脚可以直接悬空或者作为普通I/O口使用。 关于寄存器的概念,我们暂时不做详细阐述。 随着内容慢慢展开,我们会详细介绍如何查看芯片的寄存器。

图3.2IRC24MCR寄存器图

图3.3IRC24MCR寄存器复位初始值

② 外接晶振电路:

图3.4是典型的外部晶振时钟输入电路。

图 3.4 典型外部晶振输入电路

图中Y为晶振。 按材质可分为陶瓷晶振和石英晶振。 根据是否有电源分为有源晶振和无源晶振。 一般可采用无源石英晶振,也可采用有源晶振。 费用一般比较贵。 C1、C2为负载电容,电容值一般根据晶振手册推荐选择,取值一般在15PF~30pF之间。

③ 外部时钟输入:

图3.5是典型的外部时钟输入电路。 您只需从 XTALI 引脚输入时钟即可。 该时钟可以是正弦信号或脉冲信号。

图 3.5 典型外部时钟输入电路

以上是产生单片机所需时钟的三种方法。 在实际应用过程中,应根据具体需求、应用环境、成本等因素综合考虑采用哪种方法。 至于具体如何配置时钟,不同的单片机有不同的配置方法。 具体细节我暂时不讲。 稍后在单片机的编程中会介绍。

2. 复位电路

最小微控制器系统的第三个组件被重置。 重置的内容很容易理解。 意味着单片机结束当前任务,重新开始执行程序。 就像我们日常生活中使用PC电脑一样,有时候电脑死机的时候,我们都知道可以通过按重启按钮来重新启动电脑。 其实这是一个重置的过程。 不同的微控制器制造商的复位方法略有不同。 以下四种重置是最基本的。

① 上电复位

当单片机断电后又有电时,单片机会将内部寄存器重置为初始值,读取所有硬件选项,并根据写入Flash的代码开始执行程序。

② 低电压复位

当输入电源电压下降到一定程度时,也会引起复位。 在STC8A系列51单片机芯片手册中,有如下寄存器说明,如图3.6所示。

图3.6RSTCFG复位配置寄存器

从芯片手册中的复位配置寄存器可以看出,需要引起低电压复位的条件需要配置寄存器的bit6 ENLVR能够低电压复位。 同时,可以通过LVDS[1:0]配置电压值的阈值电压,例如配置为2.2V,则当VCC的电压值低于2.2V时,会自动发生复位。 当电压继续降低时,将直接进入掉电模式,单片机不再工作。 该模型的应用并不多。

③ 复位引脚复位

复位引脚(RST引脚)的复位常用方法有两种。 一是图3.7左侧所示的上电复位电路。 上电时,VCC首先会对电容C充电,因此RST引脚电压接近VCC,即高电平。 随着时间的增加,电容器C逐渐充满电。 由于电容的隔直流特性,它处于截止状态,并且由于RST将电阻R下拉至GND,RST将被强制为低电平。 上电复位有延时作用,延时时间与电容值的大小即充电时间有关。 这种设计的优点是,在单片机开始工作之前,输入电源VCC处于稳定状态。 否则可能会因上电过程中电源不稳定而导致部分数据读取异常。 这是通过硬件延迟启动来实现的。

图 3.7 典型的上电复位电路

如图3.7右图所示,通过SW外部按钮复位,SW空闲时断开,RST的电平变化与前述上电复位相同。 当单片机工作时,如果需要手动复位,可以按SW键。 当SW闭合时,RST被强制拉至VCC(高电平),从而实现复位。 值得注意的是,芯片手册中包含了RST应该保持多长时间。 高电平可以复位,即SW保持按下的时间长度。

④ 看门狗复位

看门狗复位也是一个常用的功能。 目的是当程序运行异常时,复位系统,重新开始程序的执行。 这就是常说的程序跑飞,即单片机没有按照既定的程序执行代码。 看门狗的原理其实很简单。 通俗地说,就是单片机内部独立运行的定时器。 一旦看门狗使能,内部定时器将保持计时。 如果在规定的时间内,定时器没有清为0,俗称“喂狗”,就会认为程序跑了,系统会自动复位。

以上是单片机最小系统中有关时钟和复位的相关说明。 下一期将从单片机最小系统开始,进入原理图设计阶段。 请继续关注。

往期回顾:第六期:最小单片机系统的电源

往期回顾:第五期:数字电路基础

往期回顾:第4期:创建PCB封装—AD

往期回顾:第3期:创建PCB封装—PADS

往期回顾:第2期:新组件—AD

往期回顾:第一期:新组件—PADS

单片机

研究数据:突出重点,不得有图表、公式推导

2024-2-3 15:02:58

单片机

蔬菜上的农药用什么洗自来水?看完惊呆了!

2024-2-3 16:02:40

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索