软件陷阱技术|http://www.eebyte.com   广告招商访问统计  网站手册 斑竹简介         | 首页 | 产品销售 | 成果转让 | FPGA | 单片机 | 分类文章 | 下载中心 | 电子工程师论坛 |2003年12月1日 星期一     | FPGA设计 | | 单片机 | | 电路板设计 | | 实用资料 | | 站务相关 | | 轻松入门 | | 通信技术 | | 单片机>>MCS51单片机技术文章>>软件陷阱技术 打印 软件陷阱技术 http://www.eebyte.com 2003-4-23 电子工程师网站 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区的部分数据可以判断保留. 至于是否能有所作用只有天知道了.(呵呵~ ~),不过我写的程序一般是最稳定的,也许是这玩意在起作用吧! -----阿飞 原作者:不详 来 源:不详 共有1039位读者阅读过此文 【告诉好友】 上篇文章:详尽的51浮点汇编库 下篇文章:常用的几种码制转换 □- 本周热门文章 □- 相关文章 软件陷阱技术 请使用IE4.0以上版本浏览器,分辩率为800*600光顾本站 网站问题:master@eebyte.com EEByte.Com Copyright 2002-2003 未经本站斑竹书面同意,任何网站不得复制、摘录本站文章