您现在的位置: 论文网 >> 计算机论文 >> 计算机应用论文 >> 探索80C51的三种非常规的复位技术论文

探索80C51的三种非常规的复位技术

作者:未知
出处:论文网
时间:2007-03-07



;(据实际需要还可初始化其他SFR)
MOV DPTR,#SWR0 ;为RETI准备弹出地址,而又不想改变执行顺序
PUSHDPL ;压栈低字节,在先
PUSHDPH;压栈高字节,在后
RETI;中断返回指令,清除高级中断激活触发器
SWR0: CLR A ;准备复位地址
PUSHACC,压栈低字节00H
PUSHACC,压栈高字节00H
RETI ;清除低级中断激活触发器,并跳到0000H
以下几点需要说明:(1)首先关闭总的中断使能位,以确保软件复位过程顺利完成;(2)其中的核心指令是中断返回指令RETI,因为在整个指令集中只有该指令能够清除中断激活触发器,(3)末尾RETI指令的作用还代替了一条3字节的“LJMP 0000H”指令,(4)由软件陷阱捕获的跑飞程序并不一定同时置位了所有两个中断激活触发器,但是该程序仍然适用,并且也没有任何负面影响:(5)软件复位标志这里利用了PSW中的一个通用位FO,也可以利用F1、GFO、GFl以及RAM字节单元或位单元等,(6)软件复位是一种不外扩任何硬件电路、不导致单片机发生状态迁移、纯软件的复位方法。

软硬件复位技术


软硬件复位是软件复位功能的一种延伸,也是单片机的一种自主复位方式,既具有软件复位的特点(可以由编程人员按需要来启用),又具有硬件复位的特点(能够实现硬件复位的全部操作内容)。这种复位方式是本文作者自行规划、设计和命名的。
在上述软件复位的基础上很容易实现这里所说的软硬件复位方式,不过需要外扩一定的硬件电路的支持。图2是两种配合软硬件复位的外扩电路。其中,图2(a)电路是在普通复位电路的基础上,添加1只三极管Q1和3只阻容元件而成的,并且其导通与截止由一条井口引脚控制,如P1.0。平时P1.0维持高电平,Q1截止:当内部软件需要实施该复位时,从P1.0脚输出低电平,Q1导通把RST脚拉高,强行复位单片机。这里R3、R4和C2起着延时和限流的双重作用。图2(b)电路是在MAX812M对接80C51电路基础上添加一条连线而成的,其工作原理与上类似。该连线把MAX812M的人工复位输入脚MR和一条通用I/O脚(如Pl.0)连接起来即可。
如何设计“软硬件复位程序”呢?其编写方法如下。
SHRST: ;定义软硬件复位程序的入口地址
SET F1 ;设置一个软件复位标志位
CLR P1.0 ;从P1.0输出低电平,开始实施软硬件复位
ORL PCON,#02H,置位PD,令单片机进入停机状态,即PD模式,经过延时后RST被拉高,迫使单片机进入复位状态,在复位操作完成并且唤醒单片机之后,将重新从0000H开始执行用户程序

以下几点需要说明:(1)如果利用这里的“软硬件复位程序”代替前面的“软件复位程序”,可以简化用户程序并且复位进行得彻底,但是需要增加一些硬件,并且也把可以定制的复位操作给转化成了固定的复位操作。(2)在图2所示的软硬件复位的支撑电路,除了可以提供复位信号给单片机,还有一个很大的好处,就是可以为其他外围电路捉供复位信号,这弥补了传统80C51的一个欠缺。
标准80C51的复位引脚RST是只能输入的单向结构,不能由单片机主动地为外围芯片提供同步的复位信号,而MC68HC05和MC68HC08系列、ST公司的ST7系列,以及许多新款51兼容单片机都把RST引脚设计为可输入/输出的双向结构,在内部看门狗溢出复位的同时,也从RST输出一个高电平脉冲,控制其他外围芯片与单片机进行同步复位操作。例如,A T M E L公司的AT 8 9S 5 1/52、T8 9C 5 1 RD2、AT89C51RC等型号和Philips公司的P89C51RC、P89C51RA2/RB2/RD2等型号,它们都带有内部看门狗。

非法地址复位技术

一般来说,非法地址复位是指由于意外原因导致程序计时器PC内容被破坏,而迫使CPU试图到一个非法地址去抓取指令代码来执行,就强迫单片机进行复位操作。
由于51系列单片机的硬件结构采用的是“哈佛架构”,其程序区和数据区截然分开、独立编址,不存在CPU到RAM区抓取指令的可能性,因此这极大地降低了非法寻址的概率。但是这并不能彻底杜绝非法寻址的可能性,尤其是对于哪些实际配备ROM容量远小于64Kb的情况。这时就可以狭义地定义非法地址是PC值超出ROM实际容量的地址编码。
图3是两种实现非法地址复位的支撑电路。其中,图3(a)电路是在图2(b)的基础上改变一条连线而成的。该连线一端连接PSEN信号引脚,该引脚专门用来提供选通外扩程序存储器ROM的片选信号,另一端连接MAX812M的人工复位输入脚MR。平时PSEN引脚一直维持在高电平上,只有当CPU试图非法到外部ROM抓取指令时,PSEN引脚才会送出低电平脉冲,就是巧妙地利用该脉冲作为复位信号源,来强迫单片机进行复位操作。图3(b)电路可以看作是在图2(b)基础上改变添加一条连线而成的。该连线把PSEN信号引脚和一条外部中断源引脚INT0连接起来,并且设定INT0为下降沿触发和高级中断源。当出现非法地址时,PSEN引脚上的低电平脉冲经过INT0向CPU请求中断I在CPU响应该中断之后可以设置标志,然后实施软件复位或者软硬件复位。
需要提示一点:非法地址复位方式的启用是有前提条件的,它仅适用于那些纯粹利用片上ROM(指程序存储器),即无外扩ROM,并且片上ROM不足64Kb的情况。

复位方式小结

标准80C51只有一个外接复位源引脚RST,基本所有硬件中断都是通过RST脚引入的,并且是根据实际需要逐个进行扩充的。其中只有上电复位POR是什么场合下都必不可少的。其扩充顺序大致符合(不是绝对符合)表1中的规律。
在此对于可能用到的多种复位源和复位的方式,进行如下几种不同的分类。

1 传统复位方式和非传统复位方式
传统复位方式(包含上电复位和人工复位)是80C51技术手册和所有教科书中几乎都提及的,而非传统复位方式(包含欠压复位、看门狗复位、软件复位、软硬件复位和非法地址复位)是为了满足技术发展的需要而扩充的,这也是一些新款单片机在片内新增的几种复位方式。

2 硬件复位,软件复位和软硬件复位
复位分类如表2所示,将除了软件复位之外的所有复位方式外部都引入到RST复位引脚上。

3 电源电压监控复位和程序运行监控复位
电源电压监控复位包含上电复位和欠压复位,它们都是在电源电压的非常时期实施的复位;程序运行监控复位包含人工复位、看门狗复位、非法地址复位、软件复位和软硬件复位,它们都是在用户程序失常的情况下实施的复位。

4 内部复位和外部复位
内部复位包含看门狗复位、软件复位、软硬件复位和非法地址复位,它们基本都由内部原因导致的复位;外部复位包含上电复位、人工复位和欠压复位,它们基本都由外部原因导致的复位。

5 快速复位和延时复位
前者希望复位操作越快越好,例如人工复位、看门狗复位、非法地址复位等;而后者则希望复位操作有一个延迟时间,例如上电复位、欠压复位等。

6 冷复位和热复位
只有上电复位属于冷复位,其余均属于热复位。在冷复位实施之前单片机处于无电状态。

上一页 [1] [2]

论文搜索
关键字:80C51 非常规 复位技术 软件 复位
最新计算机应用论文
基于网络信息安全技术管理的计算机应用研究
浅析人工智能体系建设
抖音短视频平台视频推荐模式研究
应用电子技术中可编程控制器的应用探讨
用友NC信息系统的实施应用实践研究
基于校园一卡通数据系统的学生行为分析研究
云环境下基于蚁群算法的动态容错技术研究
自拍图像中的记忆痕迹
抖音短视频用户使用动机研究
基于创新扩散理论的Vlog传播
热门计算机应用论文
学生成绩管理系统的设计与实现
浅析计算机病毒及防范的措施
学籍管理系统软件
对计算科学与计算机发展的思考
计算机应用型人才的培养模式研究
物资管理信息系统开发
计算机信息管理在第三方物流中的应用
嵌入式系统数字图像采集接口电路设计
基于B/S体系结构开发应用系统
项目管理在软件中的应用