background image
宏晶科技:www.MCU-Memory.com   Mobile:13922805190(姚永平)   Tel:0755-82948409    Fax: 0755-82944243
宏晶科技:专业单片机 / 存储器供应商   www.MCU-Memory.com   STC12C5410AD 系列 1T 8051 单片机中文指南
33
             如何用软件实现系统复位
ISP_CONTR: ISP/IAP 控制寄存器,地址在 0E7H 单元
 B7
 B6
 B5
 B4
 B3
 B2
 B1
 B0
Reset Value
ISPEN SWBS SWRST   CMD_FAIL  1
 WT2
 WT1
 WT0
0000,1000
ISPEN:   ISP/IAP  功能允许位。0:禁止 ISP/IAP 编程改变 Flash,1:允许编程改变 Flash
SWBS:    软件选择从用户应用程序区启动(0 ),还是从 I S P 程序区启动(1 )。要与 S W R S T 直接配合
    才可以实现
SWRST:   0: 不操作; 1 :   产生软件系统复位,硬件自动清零。
CMD_FAIL:  如果送了 ISP/IAP 命令,并对 ISP_TRIG 送 46h/B9h 触发失败,则为 1,需由
        
软件清零。
;从用户应用程序区(AP 区)软件复位并切换到系统 ISP 监控程序区开始执行程序
MOV
ISP_CONTR, #01100000B ;SWBS = 1(选择 ISP 区), SWRST = 1(软复位)
;从系统 ISP 监控程序区软件复位并切换到系统 ISP 监控程序区开始执行程序
MOV
ISP_CONTR, #01100000B ;SWBS = 1(选择 ISP 区), SWRST = 1(软复位)
本复位是整个系统复位,所有的特殊功能寄存器都会复位到初始值,I / O 口也会初始化。
;从系统 ISP 监控程序区软件复位并切换到用户应用程序区(AP 区)开始执行程序
MOV
ISP_CONTR, #00100000B ;SWBS = 0(选择 AP 区), SWRST = 1(软复位)
;从用户应用程序区(AP 区)软件复位并切换到用户应用程序区(AP 区)开始执行程序
MOV
ISP_CONTR, #00100000B ;SWBS = 0(选择 AP 区), SWRST = 1(软复位)
   用户应用程序在运行过程当中,有时会有特殊需求,需要实现单片机系统软复位(热启动之一),
传统的 8 0 5 1 单片机由于硬件上未支持此功能,用户必须用软件模拟实现,实现起来较麻烦。现 S T C 新
推出的增强型 8051 根据客户要求增加了 ISP_CONTR  特殊功能寄存器,实现了此功能。用户只需简单的控
制 ISP_CONTR 特殊功能寄存器的其中两位 SWBS / SWRST 就可以系统复位了。