当前位置:首页 > 消费电子 > 消费电子
[导读]单片机复位电路的作用是:使单片机恢复到起始状态,让单片机的程序从头开始执行,运行时钟处于稳定状态、各种寄存器、端口处于初始化状态等等。

什么是复位

单片机复位电路的作用是:使单片机恢复到起始状态,让单片机的程序从头开始执行,运行时钟处于稳定状态、各种寄存器、端口处于初始化状态等等。目的是让单片机能够稳定、正确的从头开始执行程序。

为什么要加复位?

数字电路中寄存器和 RAM 在上电之后默认的状态和数据是不确定的,如果有复位,我们可以把寄存器复位到初始状态,RAM 的数据可以通过复位来触发 RAM 初始化

程序逻辑如果进入了错误的状态,通过复位可以把所有的逻辑状态恢复到初始值,如果没有复位,那么逻辑可能永远运行在错误的状态。(一些简单的IC芯片没有看门狗电路,就需要外部复位)

好的,通过上面两段话,你了解了复位电路的作用以及为什么要加复位电路

正常单片机和IC芯片复位都是有一个Reset引脚,给复位引脚通一定时间的高/低电平就可以实现复位

典型的51单片机当RST复位脚持续两个机器周期以上高电平就将复位

像我们常用的STM32F1系列 ,查阅手册得知复位引脚需要持续20us以上的低电平,就可完成复位

复位电路的简单与复杂

复位电路,所有的数字电路系统中都存在,但是以笔者二十年经验看,不管是芯片原厂的工程师,还是电路系统厂家的工程师,鲜有人理解电路系统的复位作用,能真正理解,并恰当设计复位电路的,难得一见。

很多人,觉得这个复位电路的作用太明确了,复位电路不就是对芯片复位吗,哪有什么复杂的呢?

作用1:也是最简单的一个,就是复位系统上的芯片。

对芯片来说,复位的需求很简单,就是几ns或者几ms的低电平即可,如下图,某芯片的复位要求,上电完成后32个clock,这是多么简单的要求,一个RC复位即可。甚至很多芯片无需复位要求,内部都有POR电路,无须外部复位,就可以正常工作。

所以,很多人在设计复位电路时,就简单的在系统上电时,输出一个复位信号,将整个系统里面有复位要求的芯片复位一遍,就算完成了。也许这样设计也没有什么问题,但是在一些复杂。

作用2,复位可以用于修复系统,实现故障自愈。

我们在系统遇到问题时,经常会按复位按钮,来重启系统,从而达到修复系统的目的。

一些偶发性的故障,如软件出现异常挂死或者电源受到异常干扰,会导致系统进入故障状态,这时,通过复位就可以消除,这类复位有很多种。

1、看门狗复位

通过硬件心跳信号,或消息心跳信号,来监控某个系统,当系统挂死时,对其进行复位;

2、低电压复位

当电压异常低落时,对系统进行复位,很多复位芯片都具有电压监控功能,也有部分MCU有LVR功能,可以配置电压跌落到多少时,输出复位信号。

下面是某款MCU的POR和LVD功能描述,用于实现LVR。

3、时钟异常复位

通过时间检测芯片,或者FPGA来对关键时钟进行检测,当出现异常时,对系统进行复位;

4、软件复位模块

通过软件对某些通信通道,或者功能模块进行故障检测,当检测到通信通道异常,或者模块异常时,对系统进行复位。如IIC通道读写检测,存储空间某些算法的读写检测。

熟练理解上述复位功能,并实施相应的复位电路的设计,会让你的电子系统更加稳定可靠。

作用3,也是系统中复位电路的真正作用,就是在整个系统(注意是系统,而不是芯片)处于不稳定状态时,通过复位使整个系统处于一种可控状态。

这里以几个具体产品来说明复位的这个真正作用。

一个由外部插拔电源适配器供电的产品,内部有法拉电容作为掉电保护电源,当插入外部电源时,开机,当拔掉外部电源时,关机。电路设计,电源由PMIC给出,所有电源输出后,PMIC又输出复位信号,给整个系统复位。

这个电路系统复位,看似没有问题,但是实际上,就是没有考虑到电源入口插入时电源接触上造成电源抖动的这种不可控状态,所以会导致严重的问题。

问题分析如下:

当用户插入电源时,由于电源抖动,时而连接,时而断开,造成PMIC输出电源跌落,CPU挂死,但这个电源跌落并不会导致复位输出为低,所以CPU挂死无法解除。

用户保持一段时间后,看到无法启动,拔出适配器,法拉电容被充电,可以维持PMIC输出,CPU继续保持挂死状态;

用户拔出1~2秒后,又插入电源适配器,供电又被维持,不会触发系统复位,CPU继续挂死;

就这样,一旦出现问题,用户反复这样插拔,系统始终处于挂死状态无法解除。其根本原因,就是系统复位没有考虑到插拔电源这种异常状态,并使系统处于复位状态。

其实这种类似的产品非常常见,我们的手机就是这种情况,不过不是法拉电容,而是电池,当手机没有电,插拔USB充电时,以前的手机,也许就遇见过这种故障。当然现在可能采用多种方式规避了,比如充电时电池电量低于10%,都控制不能开机。

不过在工业控制类产品,没有使用锂电池,而是大量使用法拉电容(用于掉电时保持某些配置),基本都是这种供电架构,而且要求插电必须开机,这样复位电路就是有问题的。大家可以想想怎么去修改这个复位设计。

无独有偶,在车载类产品,方案如下:

MCU采用RC复位,MCU输出复位给SOC,也有法拉电容,由于MCU电源在启动时,出现振荡,导致MCU挂死,系统无法启动,更严重的是由于启动时,没有对MCU复位,导致MCU内部程序损耗,产品需要返厂才能维修。

这类产品,之所以出现这种故障,都是因为对系统复位电路的设计,缺乏深入的理解而导致的,这些设计即存在芯片原厂的demo设计,也存在系统厂商的设计中。

声明:该篇文章为本站原创,未经授权不予转载,侵权必究。
换一批
延伸阅读

复位电路是一种用来使电路恢复到起始状态的电路设备,它的操作原理与计算器有着异曲同工之妙,只是启动原理和手段有所不同。复位电路,就是利用它把电路恢复到起始状态

关键字: 复位电路 电容 电源

单片机是一种嵌入式系统,它是一块集成电路芯片,内部包含了处理器、存储器和输入输出接口等功能。

关键字: 单片机 编写程序 嵌入式

在现代电子技术的快速发展中,单片机以其高度的集成性、稳定性和可靠性,在工业自动化、智能家居、医疗设备、航空航天等诸多领域得到了广泛应用。S32单片机,作为其中的佼佼者,其引脚功能丰富多样,是实现与外部设备通信、控制、数据...

关键字: s32单片机引脚 单片机

在微控制器领域,MSP430与STM32无疑是两颗璀璨的明星。它们各自凭借其独特的技术特点和广泛的应用领域,在市场上占据了重要的位置。本文将深入解析MSP430与STM32之间的区别,探讨它们在不同应用场景下的优势和局限...

关键字: MSP430 STM32 单片机

该系列产品有助于嵌入式设计人员在更广泛的系统中轻松实现USB功能

关键字: 单片机 嵌入式设计 USB

单片机编程语言是程序员与微控制器进行交流的桥梁,它们构成了单片机系统的软件开发基石,决定着如何有效、高效地控制和管理单片机的各项资源。随着微控制器技术的不断发展,针对不同应用场景的需求,形成了丰富多样的编程语言体系。本文...

关键字: 单片机 微控制器

单片机,全称为“单片微型计算机”或“微控制器”(Microcontroller Unit,简称MCU),是一种高度集成化的电子器件,它是现代科技领域的关键组件,尤其在自动化控制、物联网、消费电子、汽车电子、工业控制等领域...

关键字: 单片机 MCU

STM32是由意法半导体公司(STMicroelectronics)推出的基于ARM Cortex-M内核的32位微控制器系列,以其高性能、低功耗、丰富的外设接口和强大的生态系统深受广大嵌入式开发者喜爱。本文将详细介绍S...

关键字: STM32 单片机

在当前的科技浪潮中,单片机作为嵌入式系统的重要组成部分,正以其强大的功能和广泛的应用领域受到越来越多行业的青睐。在众多单片机中,W79E2051以其卓越的性能和稳定的工作特性,成为市场上的明星产品。本文将深入探讨W79E...

关键字: 单片机 w79e2051单片机

单片机,又称为微控制器或微处理器,是现代电子设备中的核心部件之一。它集成了中央处理器、存储器、输入输出接口等电路,通过外部信号引脚与外部设备进行通信,实现对设备的控制和管理。本文将详细介绍单片机的外部信号引脚名称及其功能...

关键字: 单片机 微控制器 中央处理器
关闭