单片机的软件复位.doc

单片机的软件复位.doc

ID:50835535

大小:51.95 KB

页数:6页

时间:2020-03-15

单片机的软件复位.doc_第1页
单片机的软件复位.doc_第2页
单片机的软件复位.doc_第3页
单片机的软件复位.doc_第4页
单片机的软件复位.doc_第5页
资源描述:

《单片机的软件复位.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、单片机的软件复位(热启动)用户应用程序在运行过程中,有时会有特殊需求,需要实现单片机系统复位(热启动之一),传统的8051单片机由于硬件上未支持此功能,用户必须用软件模拟实现,实现起来较麻烦。STC单片机增加了相应的硬件功能,内部的ISP/IAP控制寄存器ISP_CONTR便可以实现此功能。用户只需简单的控制ISP_CONTR特殊功能寄存器的其中两位SWBS和SWRST就可以实现系统复位。ISP/IAP控制寄存器(ISP_CONTR)STC单片机ISP/IAP控制寄存器在特殊功能寄存器中的字节地址为E7H,不能位寻址,该寄存器用来管理和I

2、SP/IAP相关的功能设定及是否软件复位等。单片机复位时该寄存器全部被清0。其各位的定义如表4.3.1所示。 表1ISP/IAP控制寄存器(ISP_CONTR)位序号D7D6D5D4D3D2D1D0位符号ISPENSWBSSWRST----WT2WT1WT0       ISPEN:ISP/IAP功能允许位。0:禁止ISP/IAP编程改变Flash。1:允许编程改变Flash。      SWBS:软件选择从用户应用程序区启动(0),还是从ISP程序区启动(1)。要与SWRST直接配合才可以实现。      SWRST:0:不操作;1:产

3、生软件系统复位,硬件自动清零。 WT2、WT1、WT0:ISP/IAP编程时设定CPU等待的最长时间。ISP/IAP编程时可对Flash进行读操作、写操作、擦除操作,当进行这些操作时,时钟将被CPU锁定只进行这些操作,而不同的操作将会耗费CPU不同的时间,这里我们通过人为设定可以给CPU一个最长的等待时间,若在此时间段内相应的操作未完成,数据将丢失或错误。以下给出芯片厂商推荐的等待时间关系表,如表3.4.2所示: 表2ISP/IAP编程CPU等待时间参考表设置等待时间CPU等待时间(机器周期)WT2WT1WT0读操作写操作擦除操作要求系统

4、时钟0116305741小于5MHz010116010942小于10MHz0012212021885小于20MHz0004324043769小于40MHz   SWBS与SWRST组合情况如下:  从用户应用程序区(AP区)软件复位并切换到用户应用程序区(AP区)开始执行程序:  ISP_CONTR=00100000B,SWBS=0(选择AP区),SWRST=1(软复位)。  从系统ISP监控程序区软件复位并切换到用户应用程序区(AP区)开始执行程序:   ISP_CONTR=00100000B,SWBS=0(选择AP区),SWRST=1

5、(软复位)。   从用户应用程序区(AP区)软件复位并切换到系统ISP监控程序区开始执行程序:  ISP_CONTR=01100000B,SWBS=1(选择ISP区),SWRST=1(软复位)。   从系统ISP监控程序区软件复位并切换到系统ISP监控程序区开始执行程序:   ISP_CONTR=01100000B,SWBS=1(选择ISP区),SWRST=1(软复位)。   本复位是整个系统复位,所有的特殊功能寄存器都会复位到初始值,I/O口也会被初始化。   用户应用程序区(AP区)指仅仅是用户自己编写的程序区。   ISP监控程序区

6、ISP区是指芯片出厂时就已经固化在单片机内部的一段程序,STC单片机可以进行ISP串行下载程序,这就是因为芯片在出厂时已经在单片机内部固化了ISP引导码,程序首次上电时先会从ISP区开始执行代码,体现在实际实验中时,就是我们在下载程序时,先要点击下载软件界面上的下载,然后再开启单片机电源,当单片机检测到上位机有下载程序的需要时,便启用ISP下载功能给单片机下载程序。若经过短暂的时间没有检测到上位机有下载程序的需求,单片机便会从用户应用程序区(AP区)开始执行代码。   接下来我们通过一个例程,为大家演示如何使用STC单片机的软件复位功能实

7、现运行中的程序突然复位。   【例】:在实验板上实现如下描述,在数码管前两位显示以秒递增数,到增加到10时,利用STC单片机的软件复位功能让单片机复位。        程序代码如下: #include#defineucharunsignedchar//宏定义#defineuintunsignedintsbitdula=P2^6;//段控制位sbitwela=P2^7;//位控制位ucharmiao,fen,aa,n1,n2,n3,n4;ucharcodetable[]={//显示编码0x3f,0x06,0x5b,0x4f

8、,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};voiddelay(uintz);//延时程序声明voidinit(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。