访问电脑版页面

导航:老古开发网手机版51单片机

软件陷阱技术

导读:
关键字:
CPU受到干扰后,往往将一些操作数当作指令码来执行,造成程序执行混乱.在A51的做法主要有以下几种:
1.中断向量区
ORG 0000H
START: LJMP MAIN
LJMP INT0
NOP
NOP
LJMP ERR ;陷阱
LJMP TOINT
NOP
NOP
LJMP ERR ;陷阱
- - - -
ORG 0040H
ERR:
-----------

2.在表格区
在表格区的最后安排5个字节的陷阱
TABEL1:
DB ------------
DB ------------
NOP
NOP
LJMP ERR
3.在未使用的ROM空间
未使用的ROM空间一般全是 0FFH,对于51来说是"MOV R7,A"的单字节指令,程序一旦弹飞到这个区域,将会飞流直下.一般在一些固定的地址加入软件陷阱,捕获弹飞的程序.
ORG 6000H
NOP
NOP
LJMP ERR
ORG 7FFBH
NOP
NOP
LJMP ERR
4.在子程序后面
XXXX:
;;;;;;;;;;
;;;;;;;;;;
RET
NOP
NOP
LJMP ERR

以及在一些长跳转的断裂点...

注: ERR子程序,应当重新设定堆栈,等一些初始化的参数,但对于RAM区的部分数据可以判断保留.

来源:   作者:  2006/9/25 16:50:53
栏目: [ 51单片机]

相关阅读

学C51的基础 11《 枚 举(enum) 》作者[cmh]©

16X2字符型液晶显示模块的驱动

C51怎样在绝对地址定义变量呢?  

AT89S52的中文简介

pdata型变量是如何分页的,如果我想把pdata型变量定义到eram的>256字节的高地址,怎样用P2口输入地址

有关单片机ALE引脚的问题

c51单片机实用通信协议

学C51的基础 8 《 控制流程语句 》 作者[cmh]©

数字温度传感器DS18B20的原理与应用

51内核8位单片机MAX7651的开发环境

volatile的作用是什么 作者[hudaidai]©

学C51的基础5《 运算符 》 作者[cmh]©

基于89C51单片机的环境噪声测量仪

学C51的基础4 《 变 量 》 作者[cmh]©

软件陷阱技术

8位单片机的无线时代和无线时代的8051单片机

带有串行接口的功率/电能计量芯片CS5460及其应用

学C51的基础7《 文件的输入输出函数 》 作者[cmh]©

学C51的基础 10《 联 合(union) 》作者[cmh]©

如何使用w77e58中的片内1k sram???