2、软件复位 ◇在系统运行过程中,有时会根据特殊需求,需要实 现单片机系统软复位(热启动之一),传统的8051 单片机由于硬件上未支持此功能,用户必须用软件 模拟实现,实现起来较麻烦。 ◇STC15F2K60S2单片机利用 ISP/AP控制寄存器 IAP CONTR(地址为C7H,复位值为00000实 现了此功能。 ◇用户只需简单的控制 IAP CONTR的其中两位SwBS / SWRST就可以系统复位了
2、软件复位 在系统运行过程中,有时会根据特殊需求,需要实 现单片机系统软复位(热启动之一),传统的8051 单片机由于硬件上未支持此功能,用户必须用软件 模拟实现,实现起来较麻烦。 STC15F2K60S2单片机利用ISP/IAP控制寄存器 IAP_CONTR (地址为C7H, 复位值为0000 x000B)实 现了此功能。 用户只需简单的控制IAP_CONTR的其中两位SWBS /SWRST就可以系统复位了。 8
2、软件复位 ◇ISP/AP控制寄存器 IAP CONTR的各位定义如下: 位号D7D6D5D4D3|D2D1D0 名称 APEN SWBS SWRST CMD FAIL-WT2WT1WTo 1) SWRST:产生软件复位的控制位。 ◆1:产生软件系统复位,硬件自动清0 ◆0:不操作 2)SWBS:要与 SWRST配合才可以实现如下复位: ◆软件复位后选择从用户应用程序区启动(0) ◆复位后从ISP程序区启动(1)
2、软件复位 ISP/IAP控制寄存器IAP_CONTR的各位定义如下: 位号 D7 D6 D5 D4 D3 D2 D1 D0 名称 IAPEN SWBS SWRST CMD_FAIL - WT2 WT1 WT0 9 2)SWBS: 要与SWRST配合才可以实现如下复位: 软件复位后选择从用户应用程序区启动(0) 复位后从 ISP程序区启动(1) 1)SWRST:产生软件复位的控制位。 1 :产生软件系统复位,硬件自动清0 0:不操作
第3章第1节(3)数据 Flash→⑤|SPAP控制寄存器 AP CONTR ◇ ISP/IAP控制寄存器 IAP CONTR(地址:C7H,复位值 为00000各位的定义如下: 位号D7D6D5 D4 D3 D2 D1 DO 位名称 IAPEN SWBS| SWRST CMD FAIL-wT2wT1wT0 ◇ LAPEN:ISP/IAP功能允许位。 ◆0:禁止IAP读/写/擦除 Data flash/ EEPROM ◆1:允许IAP读/写/擦除 Data flash/ EEPROM ◇SWBS和 SWRST用于设置单片机的软件复位。 ◇ CMD FAIL:若送了SPAP命令,并对 IAP TRIG送 5AHA5H触发失败,则为1,需由软件清零
⑤ISP/IAP控制寄存器IAP_CONTR ISP/IAP控制寄存器IAP_CONTR(地址:C7H, 复位值 为0000 x000B)各位的定义如下: 0:47 位号 D7 D6 D5 D4 D3 D2 D1 D0 位名称 IAPEN SWBS SWRST CMD_FAIL - WT2 WT1 WT0 IAPEN: ISP/IAP功能允许位。 0:禁止IAP读/写/擦除Data Flash/EEPROM 1: 允许IAP读/写/擦除Data Flash/EEPROM SWBS和SWRST用于设置单片机的软件复位。 IAPEN SWBS SWRST 10 CMD_FAIL: 若送了ISP/IAP命令, 并对IAP_TRIG送 5AH/A5H触发失败, 则为1, 需由软件清零。 CMD_FAIL 第3章 第1节(3)数据Flash→
第3章第1节(3)数据 Flash→⑤|SPAP控制寄存器 HAP CONTR 位号D7D6D5D4D3D2DD0 位名称 JIAPEN SWBS| SWRST CMD FAIL-WT2WTWT ◇WT2~WT0设置IAP/SP时的CPU等待时间,CPU读数据 Fash的等待时间固定为2个时钟。其他等待时间见表3-4。 表3-4 IAP/ISP时的CPU等待时间 WT2WT1WTO CPU等待时间 与等待参数对应 牖程时间(5s区擦出(2lms的推荐系统时钟 5个时钟21012个时钟“kMHz 0①10个时钟42024个时钟2MHz 101165个时钟63036个时钟下3MHz 10030个时钟126072个时钟6MHz 0_11k60个时钟252144个时钟飞12MHz 010100个时钟420240个时钟E20MHz 0011320个时钟504288个时钟下24MHz 0001760个时钟672384个时钟k30MHz
⑤ISP/IAP控制寄存器IAP_CONTR WT2~WT0设置IAP/ISP时的CPU等待时间, CPU读数据 Flash的等待时间固定为2个时钟。其他等待时间见表3-4。 0:47 位号 D7 D6 D5 D4 D3 D2 D1 D0 位名称 IAPEN SWBS SWRST CMD_FAIL - WT2 WWTT11 WT0 11 表3-4 IAP/ISP时的CPU等待时间 WT2 WT1 WT0 CPU等待时间 与等待参数对应 编程时间(55us) 扇区擦出(21ms) 的推荐系统时钟 1 1 1 55个时钟 21012个时钟 ≤ 1MHz 1 1 0 110个时钟 42024个时钟 ≤ 2MHz 1 0 1 165个时钟 63036个时钟 ≤ 3MHz 1 0 0 330个时钟 126072个时钟 ≤ 6MHz 0 1 1 660个时钟 252144个时钟 ≤ 12MHz 0 1 0 1100个时钟 420240个时钟 ≤ 20MHz 0 0 1 1320个时钟 504288个时钟 ≤ 24MHz 0 0 0 1760个时钟 672384个时钟 ≤ 30MHz 第3章 第1节(3)数据Flash→
位号D7D6D5D4D3D2 2、软件复位 名称 APENSWBS| SWRSTCMD FAI-WT2W ◇下面描述中,用户应用程序区简称AP区,系统ISP监控 程序区简称ISP区。 例如,从AP区软件复位并切换到AP区开始执行程序的 IAP CONTR设置代码为: MOV IAP CONTR.#00100000B sWBS0(复位后从AP区启动 SWRST=(产生软复位) ◇从ISP区软件复位并切换到AP区开始执行程序的 IAP CONTR设置代码为: MOV IAP CONTR.#00100000B SwBS0(复位后从AP区启动 SWRST=产生软复位)
2、软件复位 下面描述中, 用户应用程序区简称AP区, 系统ISP监控 程序区简称ISP区。 例如, 从AP区软件复位并切换到AP区开始执行程序的 IAP_CONTR设置代码为: MOV IAP_CONTR, #00100000B ;SWBS=0(复位后从AP区启动),SWRST=1(产生软复位) 从ISP区软件复位并切换到AP区开始执行程序的 IAP_CONTR设置代码为: MOV IAP_CONTR, #00100000B ;SWBS=0(复位后从AP区启动),SWRST=1(产生软复位) 12 位号 D7 D6 D5 D4 D3 D2 D1 名称 IAPEN SWBS SWRST CMD_FAIL - WT2 WT1