/***************************************************
*作 者 :温子祺
*联系方式:wenziqi@hotmail.com
*说 明 :软件复位的研究
***************************************************/
ISP_CONTR:ISP/IAP控制寄存器
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
复位值 |
ISPEN |
SWBS |
SWRST |
- |
- |
WT2 |
WT1 |
WT0 |
000x,0000 |
- SWBS:当设置为0时,软件复位后从用户应用程序区启动;当设置为1时,软件复位从ISP程序区启动,。要与SWRST直接配合才可以实现。
- SWRST:当设置为0时,不执行软件复位;当设置为1时,产生软件系统复位,硬件自动清零。
该复位是整个系统复位,所有的特殊功能寄存器都会复位到初始值,I/O口也会初始化。
【例子】通过按键中断来使MCU软件复位,复位后闪烁LED灯一段时间,然后MCU保持当前状态,空转。若要继续使LED重新闪烁,要求MCU复位来进行。
软件复位代码:
1 #include " stc.h "
2
3