历史上的今天
返回首页

历史上的今天

今天是:2025年05月20日(星期二)

正在发生

2018年05月20日 | 电源意外关闭时MCU能否继续完成相应操作

2018-05-20 来源:MCU开发加油站

对于主电源掉电后需要继续工作一段时间来用于数据保存或者发出报警的产品,我们往往都能够看见产品PCB板上有大电容甚至是超级电容器的身影。大容量的电容虽然能延时系统掉电,使得系统在电源意外关闭时MCU能继续完成相应操作,而如果此时重新上电,却经常遇到系统无法启动的问题。那么这到底是怎么回事呢?遇到这种情况又该如何处理呢?

一、上电失败问题分析

1. 上电缓慢引起的启动失败

对于需要进行掉电保存或者掉电报警功能的产品,利用大容量电容缓慢放电的特性来实现这一功能往往是很多工程师的选择,以便系统在外部电源掉电的情况下,依靠电容的储能来维持系统需要的重要数据保存及安全关闭的时间。此外,在不需要掉电保存数据的系统中,为了防止电源纹波、电源干扰及负载变比引起供电电压的波动,在电源输出端也需要并接一个适当的滤波电容。

电路中增加电容,虽然使系统在某些方面能满足设计要求,但是由于电容的存在,系统的上电时间也会相应的延长,下电时由于电容放电缓慢,下电时间也会更长。而上下电时间的延长,对于MCU来说,往往会带来意外的致命缺点。

比如某系列的MCU,就经常能遇到客户反馈说系统在掉电后重新上电,系统启动失败的问题,一开始工程师以为是软件的问题,花费了很大的时间和精力来找BUG,问题仍然没有很好的得到解决。后来查翻手册发现,发现该系列的MCU对于上电时间是有一定要求的(其实几乎所有品牌的MCU都有上下电时序要求)。

图1:上电要求

从图1我们可以看出,芯片输入电源从200mV以下为起点上升到VDD的时间tr,手册要求是最长不能超过500ms。而电路中的大电容乃至超级电容,显然会大大拉长这个上电时间,对于没有详细选择参数的电源设计来说,这个时间甚至可能会远远大于500ms。这样的话就不能很好地满足芯片的上电时间要求,从而导致系统无法启动,或者器件内部上电时序混乱而引起器件闩锁的问题。

所以电源的上电缓慢对于MCU处理器来说,有时也是一个“头痛”问题,那么如何有效的解决上电缓慢这个问题呢?先别急,我们再来说说系统下电缓慢带来的问题。而且下电缓慢引起的问题,比上电时间过长的问题更普遍。

2. 下电缓慢引起的启动失败

其实上面提到的上电图中,还有一个至关重要的参数,那就是图中的twait。我们可以从图中看到twait的最小数值为12μs。这个参数的含义就是说,在上电之前,芯片的输入电源需保持在200mV以下至少12μs的时间。这个参数就要求我们的电路在掉电后,如果需要对系统重新上电的话,必须让芯片的输入电源电压至少有12μs的时间是在200mV以下。换个角度表述就是:在下电后,必须让MCU的供电电压降到200mV以下才能再次上电(12μs很短,几乎可以忽略),系统才能可靠运行。

由于电路中存在大电容,系统负载又小,导致电路下电缓慢,当我们再次上电时,芯片电源电压此时可能还没有降到200mV 以下,如下图2所示:

图2:缓慢掉电再上电示意图

由于电路中存在较大的电容,在系统掉电后,系统负载不能很快的泄放能量时,就会出现MCU等数字器件掉电缓慢的情况。此时重新上电的话,由于不符合上文提到的降到200mV以下 12μs以上的要求,芯片内部就没有及时“归零”。对MCU等数字器件来说,这是一种不确定的状态,此时再对系统进行重新上电的操作,就容易造成MCU逻辑混乱,从而出现器件闩锁,系统不能启动的情况。

掉电缓慢也会导致MCU等数字器件内部掉电时序的混乱,特别是对于需要多路电源的MCU处理器,它们对于上电时序和掉电时序有更高的要求,内部时序的混乱会引起器件闩锁,系统无法启动。这也是为什么很多产品重启时,系统往往无法启动。

因此我们可以看出,系统上电或下电缓慢都有可能会造成MCU无法启动或者启动异常的情况,那么如何对缓慢的上电放电过程进行干预,提升上电斜率,缩短掉电时间呢?

二、解决方案推荐

当遇到系统启动失败的问题时,请先使用示波器检查器件的供电引脚是不是存在上电缓慢,掉电缓慢,不彻底的情况。当遇到该情况时,可以选择在电路中搭配使用广州周立功单片机科技有限公司研发的小体积、低内阻的电源调理模块:QOD-ADJ。

该模块可以保证在系统上电时,当电压达到额定电压的约70%-75%左右才开启输出,此后输出跟随输入,相当于给系统一个极快上电的电源。下电时,该模块可以对电容残存电压自动放电,可以在极短的时间内到达100mV以下,从而解决短时间内再次上电时系统处于锁死状态的问题。正所谓是上电下电两不误!使系统上下电都能稳定可靠。

图3:QOD-ADJ模块

QOD-ADJ具有以下功能:

  • 在系统电源开启时的快速上电,提升上电斜率;

  • 电源关断时使容性负载快速放电到近0V的状态;

  • 可外部控制的单通道负载开关;

  • 使用简单方便,串入需要控制的电路中即可。

三、产品使用示例

使用下图4所示电路进行对我们的产品进行测试:

图4:测试电路图

当VIN=5V,Cin=2.5F(超级电容),CL=100μF,RL=10Ω时的上电曲线和掉电曲线如图5图6输入端2.5F超级电容及负载10Ω下电曲线所示。

图5:输入端2.5F超级电容及负载10Ω上电曲线

图6:输入端2.5F超级电容及负载10Ω下电曲线

1. 显著缩短上电时间

由上面两图可以清楚的看出因为有超级电容的存在,VIN的上电曲线(蓝色曲线)爬升缓慢,而经过模块之后(Vout红色曲线)显著缩短了上电时间,使后级电路能在短时间内达到一种确定的状态。

2. 显著加快掉电速度

由图可以看出在系统掉电时,由于有超级电容的存在,模块前端(蓝色曲线)掉电速度,异常缓慢,经过模块之后(红色曲线)能显著加快放电速度,使得后级电路在极短的时间内到达一种确定的状态。

系统中的器件对于电源的上下电有严格的要求,在产品的设计当中,要关注核心器件的上下电要求,包括上下电的时序,斜率等,不合理的设计往往会引起系统上电无法启动等异常情况。

推荐阅读

史海拾趣

HI Microwave Technology Limited公司的发展小趣事

在稳固国内市场的同时,HI Microwave积极开拓国际市场,与全球多家知名企业建立了长期稳定的合作关系。公司凭借优质的产品和服务,赢得了国内外客户的广泛赞誉。此外,HI Microwave还积极参与国际展览和交流活动,不断提升品牌知名度和影响力。通过与国际同行的交流与合作,公司不断吸收先进的管理理念和技术成果,为企业的持续发展注入了新的活力。

Bergquist Company公司的发展小趣事

随着导热材料技术的不断进步,其应用领域也在不断扩展。Bergquist Company紧跟市场需求,将导热产品应用于汽车、家用电器、电脑、散热器、电源供应器及电马达控制等多个领域。这些产品的广泛应用不仅提升了人们的生活品质,还为公司的持续发展注入了强大动力。

Captive Fastener公司的发展小趣事

随着环保意识的日益增强,Captive Fastener公司积极响应国家环保政策,推动生产方式的绿色转型。公司引进先进的环保生产设备和技术,减少生产过程中的污染排放。同时,公司还研发出可回收再利用的紧固件产品,为电子行业的可持续发展做出了贡献。

Cellergy公司的发展小趣事

在电子行业的快速发展中,Cellergy公司以一项创新技术打破了行业内的常规。该公司成功研发出了一种新型电容器,其性能远超市场上同类产品。这一技术突破不仅为Cellergy公司赢得了大量订单,还使其在电子行业中的地位得到了显著提升。随着技术的不断完善和市场的不断拓展,Cellergy公司逐渐成为了电容器领域的佼佼者。

Beck IPC GmbH公司的发展小趣事

为了进一步增强公司的竞争力,Beck IPC积极寻求与其他优秀企业的收购与合作机会。在某一时期,公司成功收购了一家在边缘网关系列产品领域具有领先地位的企业。通过这次收购,Beck IPC不仅获得了更多先进的技术和产品,还进一步巩固了其在工业物联网领域的地位。此外,公司还与多家知名企业建立了战略合作关系,共同推动行业发展。

Akahane Electronics Ind Corp公司的发展小趣事

面对日益严重的环境问题,Akahane敏锐地捕捉到绿色电子产品的市场潜力。公司投入大量研发资源,开发出低能耗、环保的电子产品,并积极推广绿色生产和循环经济理念。这一举措不仅赢得了消费者的青睐,还为公司赢得了良好的社会声誉。同时,Akahane还积极参与国际环保组织的活动,推动电子行业的绿色化发展。

问答坊 | AI 解惑

STM32资料集锦(不断补充中...)

------------------------------------------------------------------- 基础篇: 1: 这是宣传册,资源概览 STM32 2008年回顾暨2009年新产品预告 STM32应用实例 STM32F10x 大容量Flash 产品介绍 2:芯片手册 STM32F101xx 和STM ...…

查看全部问答>

小小一片,大大学问——谈谈滤光片

各位有没有想过, 到底CCD上那片玻璃片是干嘛用的?--- 那片滤光片,正确名称叫”光学低通滤波器” (OLPF)! 啊!不就是片破玻璃片嘛! 且听我道来: 滤光片的功用:1.滤除红外线. 2.修整进来的光线 滤除红外线: 彩色CCD也可感应红外线,就是因为会感应 ...…

查看全部问答>

别傻了(10):和同事讨论自己的私事

在工作场合中透露私事很危险 现在我们大部分人有太多时间跟同事一起过,我们跟同事在一起的时间有时甚至超过跟家人在一起的时间,这种情况使我们有时分不清公事和私事,有时候觉得跟同 事的关系像亲人一样,跟同事分享自己的私事,孩子养育问题, ...…

查看全部问答>

请教程序里的一个问题

程序里有这样的几个语句,我看不懂,不知道是什么意思,请大家帮个忙! jnb p3.2,$ lcall CMD_gbgball 第一句我在网上查了下,有几种说法 1. p3.2放开否,放开则转到下面的语句 2. 等待上升沿 3. 如果外部已是高电平,则等待低电平来临 &nbs ...…

查看全部问答>

WinCE里如何对wave文件进行播放,不能调用播放器

程序里已经实现TTS的播放,也就是代码里已经实现过对WinCE音频设备的打开与关闭, 可是我不会播放wave文件,从我的猜想中播放wave文件是不是与TTS一样(TTS是把文字转换成音频数据)把wave文件的二进制内容压入到wince音频设备的通道里去? 这只 ...…

查看全部问答>

PB如何加一个dll文件到内核呢?

我想在编译CE5.0内核时候将mfcce400.dll文件加到内核文件中去. 这样运行应用程序时候就可以直接运行.而不需要事先将错就mfcce400.dll加到板子上的CE中去. 我在platform.bib文件中的module加上: mfcce400.dll    $(_FLATRELEASEDIR)\\mfc ...…

查看全部问答>

ST裸机开发能用malloc吗?

                                 纠结的一个问题。。裸机开发没有系统的话,能不能用malloc()函数呢?如果能用,是谁在管理堆区呢?…

查看全部问答>

AD通道的输入阻抗的问题!

我想问一下 430的AD通道的输入阻抗大不大啊!我的传感器进来的信号是10v的,我通过阻容电路滤波分压后,再经过运放的电压跟随后进430,我现在不想用运放跟随,直接进430.不知道信号会不会有什么损失啊!就是我的信号会不会失真啊!430的ad通道的输入阻抗大 ...…

查看全部问答>

STM8 硬件I2C问题

如题,最近在调STM8的 硬件I2C来读写24C16,不知道是不是用7位模式?要用7位模式或10位模式要怎么配置?…

查看全部问答>

这是什么零件有什么作用

如下这颗零件是用在开关电源上的应该是共模电感起EMI滤波用的,但上面有颗零件 【红色的】 不知道是何作用,量测为导通的…

查看全部问答>