801251上电复位和复位延时的时序分析

发布者:电竞狂人最新更新时间:2011-07-29 关键字:上电复位  复位延时  时序分析 手机看文章 扫描二维码
随时随地手机看文章
  80C51单片机的上电复位POR(Pmver On Reset)实质上就是上电延时复位,也就是在上电延时期间把单片机锁定在复位状态上。为什么在每次单片机接通电源时,都需要加入一定的延迟时间呢?分析如下。

1 上电复位时序

  在单片机及其应用电路每次上电的过程中,由于电源同路中通常存在一些容量大小不等的滤波电容,使得单片机芯片在其电源引脚VCC和VSS之间所感受到的电源电压值VDD,是从低到高逐渐上升的。该过程所持续的时间一般为1~100ms(记作tsddrise)。上电延时taddrise的定义是电源电压从lO%VDD上升到90%VDD所需的时间,如图1所示。

  在单片机电源电压上升到适合内部振荡电路运行的范围并且稳定下来之后,时钟振荡器开始了启动过程(具体包括偏置、起振、锁定和稳定几个过程)。该过程所持续的时间一般为1~50 ms(记作tOSC)。起振延时tOSC的定义是时钟振荡器输出信号的高电平达到Vih1所需的时间。从图1所示的实际测量图中也可以看得很清楚。这里的Vih1是单片机电气特性中的一个普通参数,代表XTALl和RST引脚上的输入逻辑高电平。例如,对于常见的单片机型号AT89C5l和AT89S5l,厂家给出的Vih1值为0.7VDD~VDD+0.5V。

  从理论上讲,单片机每次上电复位所需的最短延时应该不小于treset。这里,treset等于上电延时taddrise与起振延时tOSC之和,如图1所示。从实际上讲,延迟一个treset往往还不够,不能够保障单片机有--一个良好的工作开端。

  在单片机每次初始加电时,首先投入工作的功能部件是复位电路。复位电路把单片机锁定在复位状态上并且维持一个延时(记作TRST),以便给予电源电压从上升到稳定的一个等待时间;在电源电压稳定之后,再插入一个延时,给予时钟振荡器从起振到稳定的一个等待时间;在单片机开始进入运行状态之前,还要至少推迟2个机器周期的延时,如图2所示。

2 上电复位电路3款

  上述一系列的延时,都是利用在单片机RST引脚上外接一个RC支路的充电时间而形成的。典型复位电路如图3(a)所示,其中的阻容值是原始手册中提供的。在经历了一系列延时之后,单片机才开始按照时钟源的工作频率,进入到正常的程序运行状态。从图2所示的实测曲线中可以同时看到4条曲线:VDD、Vrst、XTAL2和ALE。在电源电压以及振荡器输出信号稳定之后,又等待了一段较长的延时才释放RST信号,使得CPU脱离复位锁定状态;而RST信号一旦被释放,立刻在ALE引脚上就可检测到持续的脉冲信号。

  由于标准80C51的复位逻辑相对简单,复位源只有RST一个(相对新型单片机来说,复位源比较单一),因此各种原因所导致的复位活动以及复位状态的进入,都要依靠在外接引脚RST上施加一定时间宽度的高电平信号来实现。

  标准80C5l不仅复位源比较单一,而且还没有设计内部上电复位的延时功能,因此必须借助于外接阻容支路来增加延时环节,如图3(a)所示。其实,外接电阻R还是可以省略的,理由是一些CMOS单片机芯片内部存在一个现成的下拉电阻Rrst。例如,AT89系列的Rrst阻值约为50~200kΩ;P89V51Rx2系列的Rrst阻值约为40~225 kΩ,如图4所示。因此,在图3(a)基础上,上电复位延时电路还可以精简为图3(b)所示的简化电路(其中电容C的容量也相应减小了)。

  在每次单片机断电之后,须使延时电容C上的电荷立刻放掉,以便为随后可能在很短的时间内再次加电作好准备。否则,在断电后C还没有充分放电的情况下,如果很快又加电,那么RC支路就失去了它应有的延迟功能。因此,在图3(a)的基础上添加一个放电二极管D,上电复位延时电路就变成了如图3(c)所示的改进电路。也就是说,只有RC支路的充电过程对电路是有用的,放电过程不仅无用,而且会带来潜在的危害。于是附加一个放电二极管D来大力缩短放电持续时间,以便消除隐患。二极管D只有在单片机断电的瞬间(即VCC趋近于0V,可以看作VCC对地短路)正向导通,平时一直处于反偏截止状态。

3 上电复位失败的2种案例分析

  假如上电复位延迟时间不够或者根本没有延时过程,则单片机可能面临以下2种危险,从而导致CPU开始执行程序时没有一个良好的初始化,甚至陷入错乱状态。

  ①在时钟振荡器输出的时钟脉冲还没有稳定,甚至还没有起振之前,就因释放RST信号的锁定状态而放纵CPU开始执行程序。这将会导致程序计数器PC中首次抓取的地址码很可能是0000H之外的随机值,进而引导CPU陷入混乱状态。参考图5所示的实测信号曲线。

  ②在电源电压还没有上升到合适范围之前(自然也是时钟尚未稳定之前),就释放RST信号的锁定状态,将会使单片机永远感受不到复位信号、经历不到复位过程、包含PC在内的各个SFR内容没有被初始化而保留了随机值,从而导致CPU从一个随机地址开始执行程序,进而也陷入混乱状态。参考图6所示的实测信号曲线。 [page]

4 外接监控器MAX810x

  为了提高单片机应用系统的稳定性,以及保障单片机应用系统的可靠复位,许多世界著名的半导体公司,陆续推出了种类繁多、功能各异、封装微小的专用集成电路。本文仅以带有电源电压跌落复位和上电延迟复位功能的3脚芯片MAX810x为例,简单说明。

  MAX810x(x=L、M、J、T、S或R)是美国Maxim公司研制的一组CMOS电源监控电路,能够为低功耗微控制器MCU(或μC)、微处理器MPU(或μP)或数字系统监视3~5V的电源电压。在电源上电、断电和跌落期间产生脉宽不低于140ms的复位脉冲。与采用分立元件或通用芯片构成的欠压检测电路相比,将电压检测和复位延时等功能集成到一片3引脚封装的小芯片内,大大降低了系统电路的复杂性,减少了元器件的数量,显著提高了系统可靠性和精确度。应用电路如图7所示。

  MAX810x系列产品提供高电平复位信号,并且还能提供6种固定的检测门限(4.63V、4.38V、4.OOV、3.08V、2.93V和2.63V)。例如,MAX810M的检测门限电压就是4.38V,回差电压约为O.16V。

  对于MAX810,在电源上电、断电或跌落期间,只要VCC还高于1.1V,就能保证RESET引脚输出高电压。在VCC上升期问RESET维持高电平,直到电源电压升至复位门限以上。在超过此门限后,内部定时器大约再维持240 ms后释放RESET,使其返回低电平。无论何时只要电源电压降低到复位门限以下(即电源跌落),RESET引脚就会立刻变高。

  关于MAX8lO芯片的更多信息,可以参考该器件的产品手册。

 

关键字:上电复位  复位延时  时序分析 引用地址:801251上电复位和复位延时的时序分析

上一篇:C8051F12X存储大量常量代码的编译技巧
下一篇:MCS-51单片机串行口IP核的实现

推荐阅读最新更新时间:2024-03-16 12:38

高速嵌入式视频系统中SDRAM时序控制分析
在高速数字视频系统应用中,使用大容量存储器实现数据缓存是一个必不可少的环节。SDRAM就是经常用到的一种存储器。 但是,在主芯片与SDRAM之间产生的时序抖动问题阻碍了产品的大规模生产。在数字电视接收机的生产实际应用中,不同厂家的PCB板布线、PCB材料和时钟频率的不同,及SDRAM型号和器件一致性不同等原因,都会带来解码主芯片与SDRAM间访问时序的抖动问题。 本文利用C-NOVA公司数字电视MPEG-2解码芯片AVIA9700内置的SDRAM控制器所提供的时序补偿机制,设计了一个方便使用的内存时序测试软件工具,利用这个工具,开发测试人员可在以AVIA9700为解码器的数字电视接收机设计和生产中进行快速诊断,并解决SDRAM的时
[单片机]
高速嵌入式视频系统中SDRAM<font color='red'>时序</font>控制<font color='red'>分析</font>
示波器和I2C时序波形图的关系分析
I2C简介 I2C总线只需要两条线,一条SDA数据线,一条SCL时钟线;根据这两条线的高低电平、上升沿、下降沿就可以实现主机与I2C设备的通讯 I2C与示波器 对于I2C总线的数据,我们要用到示波器,这样我们才能抓取到信号,而且必须同时采集SDA和SCL的数据;该如何抓取呢?我这边的方式是将示波器调成边下降沿触发模式(因为开始信号是SDA下降沿),并且设置成单次模式(这样抓取完一次就会stop,便于我们数据分析) I2C时序波形图 12C要求要有一个主设备,负责发起清求和控制时钟:其它为从设备,通过设备ID地址来识别并响应主设备请求。主从设备要轮流控制SDA。一开始我没搞明白这一 ~点,直接加了写12C数据代码,然后用尔波
[测试测量]
示波器和I2C<font color='red'>时序</font>波形图的关系<font color='red'>分析</font>
高速嵌入式视频系统中SDRAM时序控制分析
在高速数字视频系统应用中,使用大容量存储器实现数据缓存是一个必不可少的环节。SDRAM就是经常用到的一种存储器。 但是,在主芯片与SDRAM之间产生的时序抖动问题阻碍了产品的大规模生产。在数字电视接收机的生产实际应用中,不同厂家的PCB板布线、PCB材料和时钟频率的不同,及SDRAM型号和器件一致性不同等原因,都会带来解码主芯片与SDRAM间访问时序的抖动问题。 本文利用C-NOVA公司数字电视MPEG-2解码芯片AVIA9700内置的SDRAM控制器所提供的时序补偿机制,设计了一个方便使用的内存时序测试软件工具,利用这个工具,开发测试人员可在以AVIA9700为解码器的数字电视接收机设计和生产中进行快速诊断,并解决SDRAM的
[嵌入式]
ARM处理器/复位操作
ARM处理器上电与复位操作过程类似,都是从处理器的低端复位向量地址0位置读取第一条指令,由于ARM处理器的异常中断向量是连续排列的,所以异常中断入口指令一般都是一条跳转指令,至少跳过异常中断向量区,然后按照程序流程执行。 不同嵌入式处理器的启动模式有很大差别,相同架构的不同处理器型号或序列的启动模式也不一样,比如:MC68VZ328(MC68K)有4种启动模式;PPC405GP(PowerPC)有两种启动模式;PPC440EP(PowerPC)有8种启动模式;SB1250(MIPS)有两种启动模式;PNX1700(DSP)有4种启动模式,而大部分处理器只有一种启动模式,可通过芯片的数据手册了解芯片的启动模式。 ARM处理器中的大
[单片机]
使用逻辑分析仪调试时序问题
在今天的数字世界,嵌入式系统比以往任何时候都更为复杂。使用速度更快、功耗更低的设备和功能更强大的电路,工程师需要考虑信号完整性问题。在调试和验证过程中,大部分数字电路失效可以追溯到信号完整性问题。本文将讨论如何使用逻辑分析仪的特性和功能来解决这些和时序相关的问题,以快速、方便地找到设计问题的根源。 探测的考虑 在你的设计电路中布置合适的探测点对于后期的调试工作具有至关重要的作用。有了合适的探测点,你可以把不同位置的信号时序问题关联起来,查看总线的运行情况,并分析硬件和软件接口。因此寻找问题根源的第一步就是信号的探测。 确定好测试点后,下一步就是挑选探头,探头的特性对于测量非常重要,总电容负载偏高的探头可以改变系统性能并带来(或
[测试测量]
使用逻辑<font color='red'>分析</font>仪调试<font color='red'>时序</font>问题
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved