大家好,今天小编关注到一个比较有意思的话题,就是关于51单片机复位原理的问题,于是小编就整理了3个相关介绍51单片机复位原理的解答,让我们一起看看吧。
51单片机常用的复位方法?
答51单片机常用的复位方法有四种:1.上电制动复位,只要电源的的上升时间不超过1ms,就可以实现自动上电复位 2按键电平复位,复位信号保持时间大于2个机器周期。
3.外部脉冲复位,复位信号保持时间大于2个机器周期。
4.看门狗复位,看门狗溢出时复位。.
因为单片机有复位键,那这个复位键的作用是什么?
CPU的Reset引脚是硬件复位的,复位键是手工加一个复位脉冲到Reset脚,执行硬件复位,不需要软件管。
复位后按照CPU硬件规定的地址开始执行程序,如51是从程序地址0x0000开始执行。单片机如何利用中断进行复位?
硬复位:用按键把单片机的复位脚(或电源)短接到地;
软复位:
1. 把按键功能做成IO电平变化中断,进中断入口后,人为让程序跳转到程序初始化,起到复位的效果;单片机是可控条件而复位的。
2. 把按键功能做成IO电平变化中断,进中断入口后,让程序死循环,主程序由于长时间不清看门狗而复位;这跟硬复位差不多了。
正常情况下程序都不会这样写,只有特殊要求才这样设计:发现程序不受控制或跑乱了。
谢谢邀请:
1.题主你提出的问题好像本身就有问题,首先通过按压一个按键使单片机复位的方法,这个跟中断没有关系,每一个单片机系统都可以设计一个复位电路,这个电路若是手动的就是通过一个按键使电路获得需要的高电平或者低电平来实现硬件复位,复位后单片机程序从0X00地址开始从新执行程序。例如我们常见的的51单片机复位电路如下图:
复位电路工作过程:
复位电路工作原理如右图所示,VCC上电时,使电容C充电,在10K电阻上出现高电位电压,使得单片机复位;几个毫秒后,C充满,10K电阻上电流降为0,电压也为0,使得单片机进入工作状态。工作期间,按下S22,C放电,在10K电阻上出现电压,使得单片机复位。S22松手,C又充电,几个毫秒后,单片机进入工作状态。
题主问到的应该就是这种复位电路的复位方法。
2.单片机看门狗复位:
顾名思义看门狗的意思是放置出错,有看门狗电路的单片机,再进行程序设计时可以初始化看门狗参数,设定在规定的时间或者计数脉冲内实现复位看门狗俗称“喂狗”,程序正常运行时看门狗不会溢出,若程序跑飞满足不了喂狗的条件看门狗会溢出从而输出相应电平促使单片机复位。
上图是一个自带看门口的复位电路,这个在单片机程序中规定时间输出信号给复位电路,电路保持正常,若程序跑飞WDI接收不到信号就会输出信号到nRST给单片机复位脚使单片机复位。
单片机复位电路就是为了防止程序在复杂条件下跑飞造成不可预知的后果。
你用中断进行复位是出于什么要求?要达到什么目的?要知道程序一旦复位,不只是程序从头走这么简单,单片机复位后,它的各个功能寄存器的值都有可能恢复为默认值,端口状态也会恢复成默认状态。。。。。。
如果想要实现利用中断复位,我所知道的有两种方式:看门狗中断和无中断服务程序的中断。
一、利用看门狗中断实现复位
单片机中看门狗的作用在这里就不详细说了,看门狗中断的功能之一是,防止单片机程序陷入预料之外的死循环或者单片机程序跑飞。
如何实现看门狗中断复位呢?首先我们要预估一段程序的最长运行时间,估算出来后,再加上一些时间余量,把这个时间作为看门狗的“喂狗”时间,在这个时间即将达到时,要及时“喂狗”(也就是把看门狗时间配置寄存器的值重新设置),这样看门狗会重新计时,程序继续正常运行。一旦程序跑飞或者进入一个预料之外的死循环,那么因为程序一直在这里运行,不会再运行到“喂狗”程序中,所以当看门狗寄存器的值达到预定值后,就产生了中断,这个中断让单片机复位。
二、利用没有中断服务程序的中断复位
这个功能我在MSP430单片机上试验过,没有再别的单片机上实验,所以不确定别的单片机是否也会这样。
具体实现过程是,在程序中使能某个中断,例如端口中断,串口中断等,但是不写这个中断的服务程序,这样,当满足这个中断的条件出现时,由于找不到中断服务程序,单片机就会复位。
中断里开启看门狗然后写个空的死循环,看门狗喂不了狗就复位了。没有看门狗的话就外部做个电路,能把rst脚钳位到复位电平一小段时间然后自动解除,用单片机其他脚去触发也可以,模拟上电复位的过程就好了,当然个人觉得不如加个外置看门狗。
谢邀。你问的这个问题看似简单其实要阐述起来还是蛮复杂的。
首先让我们来了解一下什么是中断技术,单片机中的中断技术主要用于实时监测与控制,要求单片机能及时地响应中断请求源提出的服务请求,并作出快速响应及时处理,这是由片内的中断系统来实现的。当中断请求源发出中断请求时,如果中断请求被允许,单片机就会暂时中止正在执行的主程序,转到中断服务子程序去处理中断服务请求,中断服务子程序处理它中断服务请求后,再回到原来被中止的程序之处,继续执行被中断的主程序。
单片机复位时,PC初始化为0O00H单元开始执行,除系统的正常化初始外,当程序出错(如程序跑飞)或操作错误使系统处于死机状态时,需接复位键使RST脚为高电平,摆脱“跑飞"或死机状态而重新启动程序,但复位操作对SFR寄存器产生影响。以上就是单片机中断,复位的简历介绍,希望对你有所帮助。
到此,以上就是小编对于51单片机复位原理的问题就介绍到这了,希望介绍关于51单片机复位原理的3点解答对大家有用。