导航:首页 > 操作系统 > 51单片机汇编语言复位

51单片机汇编语言复位

发布时间:2022-08-21 20:34:45

1. 51单片机对哪些内容进行复位复位后的值是多少

51单片机复位后主要是对内部特殊功能寄存器进行复位,复位后的值多数是00H,而四个并口寄存器P0、P1、P2、P3都为FFH。具体值见下表。

2. 51单片机复位

51单片机复位时I/O口会呈现高电平状态,如果负载是高电平触发的话,复位就有可能使负载触发了。因此,I/O口与负载之间可以加一个反相器,这样,复位时,负载得到的是低电平,就不会触发了。

3. 51单片机如何实现软件复位系统(C语言),谢谢

单片机实现软件复位(软复位)的方法及讨论

单片机实现软件复位(软复位)的方法及讨论

(天堂雨林博客blog.sina.com.cn/acer收集整理)

单片机软复位有什么好的方法?如从机收到复位命令(软件命令),程序怎么使机器复位?虽然要使软件始终处于可控状态,最好不要用"复位",因为复位是纯硬件过程,软件是不可控的.但是我们还是要讨论方法,一般流传的方法如下:

1、放狗;

2、((void(code *)(void))0x0000)();

3、用单片机一个引脚控制点一下RSTRST;

4、用单片机一个引脚控制重新加电;

5、用单片机自带的软件复位指令或内狗指令;

6、goto大法;

天堂雨林博客对以上方法的意见:

方法1:“放狗”是单片机软复位的最好办法,也基本上是唯一的一个办法。但并不是所有单片机都具备看门狗的功能,也不是一个万全之策。

办法2:这不是复位,只是把程序转到地址0去执行,不如用一个JMP更直接。目前可能极少数单片机或者用户已经自行添加Boot load时用户程序的程序开始地址并不为0x0000,所以需要查找这些特定单片机的启动地址。
在keil C51下面可以这样实现:
void soft_reset(void)
{
((void (code *) (void)) 0x0000) ();
}
在需要软件复位的地方使用语句:
soft_reset();
一般可实现软件复位。

办法3:用软件实现的硬复位。需要牺牲一个单片机引脚,且增加了单片机外部电路构造的复杂性,很不可取。

办法4:类似办法3,同样需要牺牲一个单片机引脚,且增加了单片机外部电路构造的复杂性,很不可取。但不能把它单单地当成是复位,应该叫上电复位。

办法5:Atmel 89C不带内狗,S的有内狗,只是一条指令就行。如STC的单片机有软件复位指令,即ISP_CONTR,地址在0E7H 单元(即str ISP_CONTR=0xE7),MOV ISP_CONTR,#00100000B(C语言为ISP_CONTR=0x20),内狗也是一条指令MOV WDT_CONTR,#00111100B!
STC 51系列单片机Datasheet中指出:传统的8051 单片机由于硬件上未支持此功能,用户必须用软件模拟实现,实现起来较麻烦。现STC 新推出的增强型8051 根据客户要求增加了ISP_CONTR 特殊功能寄存器,实现了此功能。用户只需简单的控制ISP_CONTR 特殊功能寄存器的其中两位 SWBS / SWRST 就可以系统复位了。

办法6:程序从头(上电复位处)开始运行,且只有一个循环这种情况,当然可以用goto,如在main()的开头设一个start:,在程序的唯一循环中设定一个条件,然后goto命令。但需要注意,如果是在中断例程里,那么中断挂号寄存器仍置位,同级中断不能执行。所以必须先使中断挂号寄存器清零,EA = 0。只有RETI指令可以使中断挂号寄存器清零。51单片机有两级中断优先级,所以需要执行两次RETI指令。这用汇编是很简单的事,而C则比较难以实现。但是,goto命令尽量不要用,因为goto会到处乱窜,而且goto不能跑到函数外面去执行一个命令。

最后总结如下:最好使用办法5最为简洁方便,使用办法2实现也不失为一种好方法

4. 单片机的三种复位方式

一、高电平复位

复位电路的工作原理 在书本上有介绍,51单片机要复位只需要在第9引脚接个高电平持续2us就可以实现,那这个过程是如何实现的呢?在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。所以可以通过按键的断开和闭合在运行的系统中控制其复位。

(1)、上电复位

电容的的大小是10uf,电阻的大小是10k。所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。也就是说在电脑启动的0.1S内,电容两端的电压时在0~3.5V增加。这个时候10K电阻两端的电压为从5~1.5V减少(串联电路各处电压之和为总电压)。所以在0.1S内,RST引脚所接收到的电压是5V~1.5V。在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。

(2) 按键复位

在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。单片机系统自动复位。

总结: 1、复位电路的原理是单片机RST引脚接收到2US以上的电平信号,只要保证电容的充放电时间大于2US,即可实现复位,所以电路中的电容值是可以改变的。 2、按键按下系统复位,是电容处于一个短路电路中,释放了所有的电能,电阻两端的电压增加引起的。

二、低电平复位

在使用STM32芯片时,常用的复位方式为按键复位,且为低电平复位。其原理与上述高电平复位相反,分析也挺简单,这里不在赘述,只给出按键复位原理
单片机的复位引脚RST(全称RESET)出现2个机器周期以上的复位电平时,单片机就执行复位操作。如果RST持续为复位电平,单片机就处于循环复位状态。当单片机处于正常电平时就正常转入执行程序。

当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST为低电平,之后随着时间推移电源通过电阻对电容充电,充满电时RST为高电平。正常工作为高电平,低电平复位。即上电低电平,然后转向高电平。当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST为低电平。正常工作为低电平,高电平复位。

5. MCS-51系列单片机常用的复位方法有几种画电路图并说明其工作原理。

51单片机常用的复位方法:
1.上电制动复位,只要电源的的上升时间不超过1ms,就可以实现自动上电复位
2.按键电平复位,复位信号保持时间大于2个机器周期。
3.外部脉冲复位,复位信号保持时间大于2个机器周期。
4.看门狗复位,看门狗溢出时复位。

6. 51系列单片机是如何进行复位的

在单片机系统的应用中,我们经常需要用到复位技术来实现抗干扰。有的单片机(如8098)有专门的复位指令,某些增强型MCS-51系列单片机虽然没有复位指令,但片内集成了WATCHDOG电路,可以很容易实现复位。而普及型MCS-51系列单片机(如8031和8032)既无复位指令,又不带硬件WATCHDOS,如果不外接硬件WATCHDOG,就必须采用软件复位技术。所谓软件复位就是用一系列指令来模仿复位操作。在MCS-51系列单片机中,只要用指令使程序从起始地址(0x0000)开始执行,就可以复位单片机。

7. 简述mc5-51单片机复位条件及方式

1.上电制动复位,注意:只要电源的的上升时间不超过1ms,就可以实现自动上电复位。 2.软件复位,注意:复位信号保持时间是编程人员预定的时间。 3.按键电平复位,注意:复位信号保持时间大于2个时钟周期。

8. 51单片机常用的复位方法有几种应注意的事项有什么

单片机复位就两种方式,一个是硬件复位,一个是软件复位。硬件复位就是靠外部的硬件强行把复位管教置为低电平,例如上电的时候,还有按键。上电之所以要复位是因为在接通电源的一瞬间,给单片机的电压是不稳定的,电压不稳定就会导致程序跑飞,从而出现意想不到的情况。而常用的阻容复位(就是一个电阻和电容串联,电阻接VCC,电容接地,复位管教接中间的那种。),当上电的时候,电源经电阻向电容充电,电容看作短路,所以复位管教为低电平,使得单片机在这段时间内不停的复位。当电源稳定后,电容已经充电完成,相当于开路,复位管教为高电平,单片机正常运行程序。软件复位就是利用单片机内部的看门狗来防止程序跑飞,看门狗就是个定时器,每个机器周期,它就加一,当它记满时,就会让单片机复位。所以要要定时重装看门狗。正常情况下,不能让他溢出。这叫喂狗。当单片机受到外界的干扰,使得程序跑飞,跑出while(1)大循环的时候,由于无法执行喂狗的动作,单片机就会复位,从而不会出现单片机死机的情况。

9. c51单片机复位电路的工作原理

如S22复位键按下时:RST经1k电阻接VCC,获得10k电阻上所分得电压,形成高电平,进入“复位状态”

当S22复位键断开时:RST经10k电阻接地,电流降为0,电阻上的电压也将为0,RST降为低电平,开始正常工作

(9)51单片机汇编语言复位扩展阅读:

复位电路是一种用来使电路恢复到起始状态的电路设备,它的操作原理与计算器有着异曲同工之妙,只是启动原理和手段有所不同。复位电路,就是利用它把电路恢复到起始状态。就像计算器的清零按钮的作用一样,以便回到原始状态,重新进行计算。

和计算器清零按钮有所不同的是,复位电路启动的手段有所不同。一是在给电路通电时马上进行复位操作;二是在必要时可以由手动操作;三是根据程序或者电路运行的需要自动地进行。复位电路都是比较简单的大都是只有电阻和电容组合就可以办到了,再复杂点就有三极管等配合程序来进行了。

单片机复位电路主要有四种类型:

(1)微分型复位电路:

(2)积分型复位电路:

(3)比较器型复位电路:

比较器型复位电路的基本原理。上电复位时,由于组成了一个RC低通网络,所以比较器的正相输入端的电压比负相端输入电压延迟一定时间.而比较器的负相端网络的时间常数远远小于正相端RC网络的时间常数。

因此在正端电压还没有超过负端电压时,比较器输出低电平,经反相器后产生高电平.复位脉冲的宽度主要取决于正常电压上升的速度.由于负端电压放电回路时间常数较大,因此对电源电压的波动不敏感.但是容易产生以下二种不利现象:

(1)电源二次开关间隔太短时,复位不可靠:

(2)当电源电压中有浪涌现象时,可能在浪涌消失后不能产生复位脉冲。

为此,将改进比较器重定电路,如图9所示.这个改进电路可以消除第一种现象,并减少第二种现象的产生.为了彻底消除这二种现象,可以利用数字逻辑的方法和比较器配合,设计的比较器重定电路。此电路稍加改进即可作为上电复位和看门狗复位电路共同复位的电路,大大提高了复位的可靠性。

10. MCS-51型单片机常用的复位方法有几种应注意哪些事项

51单片机有五种常用的复位方法:


1.上电制动复位,注意:只要电源的的上升时间不超过1ms,就可以实现自动上电复位。


2.软件复位,注意:复位信号保持时间是编程人员预定的时间。


3.按键电平复位,注意:复位信号保持时间大于2个时钟周期。


4.外部脉冲复位,注意:复位信号保持时间大于2个时钟周期。


5.看门狗溢出复位,注意:复位信号保持时间也是编程人员预定的时间。

阅读全文

与51单片机汇编语言复位相关的资料

热点内容
绵阳有没有什么app 浏览:844
怎么用游侠映射服务器 浏览:913
为什么无意下载的app无法删除 浏览:302
word2007打开pdf 浏览:113
php正则class 浏览:736
怎么在文件夹查找一堆文件 浏览:543
核酸报告用什么app 浏览:791
u8怎么ping通服务器地址 浏览:994
安卓什么手机支持背部轻敲调出健康码 浏览:870
程序员抽奖排行 浏览:744
扭蛋人生安卓如何下载 浏览:724
什么app文档资源多好 浏览:924
黑马程序员APP 浏览:148
掌阅小说是哪个app 浏览:47
如何把u盘的软件安装到安卓机 浏览:1000
php跑在什么服务器 浏览:124
编译器怎么跳转到下一行 浏览:452
嵌入式py编译器 浏览:326
rplayer下载安卓哪个文件夹 浏览:301
安卓手机里的电子狗怎么用 浏览:750