ImageVerifierCode 换一换
格式:DOC , 页数:6 ,大小:48.50KB ,
资源ID:7449726      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/7449726.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(单片机的软件复位.doc)为本站上传会员【pc****0】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

单片机的软件复位.doc

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

2、单片机复位时该寄存器全部被清0。其各位的定义如表4.3.1所示。   表1 ISP/IAP控制寄存器(ISP_CONTR) 位序号 D7 D6 D5 D4 D3 D2 D1 D0 位符号 ISPEN SWBS SWRST -- -- WT2 WT1 WT0          ISPEN:ISP/IAP 功能允许位。0:禁止ISP/IAP编程改变Flash。1:允许编程改变Flash。        SWBS:软件选择从用户应用程序区启动(0),还是从ISP程序区启动(1)。要与SWRST直接配合才可以实现。        SWRST:0:不操作

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

4、系统时钟 0 1 1 6 30 5741 小于5MHz 0 1 0 11 60 10942 小于10MHz 0 0 1 22 120 21885 小于20MHz 0 0 0 43 240 43769 小于40MHz      SWBS与SWRST组合情况如下:    从用户应用程序区(AP区)软件复位并切换到用户应用程序区(AP区)开始执行程序:    ISP_CONTR=00100000B,SWBS=0(选择AP区),SWRST=1(软复位)。    从系统ISP监控程序区软件复位并切换到用户应用程序区(AP区)开始执行

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

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

7、如何使用STC单片机的软件复位功能实现运行中的程序突然复位。     【例】:在实验板上实现如下描述,在数码管前两位显示以秒递增数,到增加到10时,利用STC单片机的软件复位功能让单片机复位。          程序代码如下:   #include #define uchar unsigned char//宏定义 #define uint unsigned int sbit dula=P2^6; //段控制位 sbit wela=P2^7; //位控制位 uchar miao,fen,aa,n1,n2,n3,n4; uchar code tab

8、le[]={ //显示编码 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}; void delay(uint z); //延时程序声明 void init(void);//初始化程序声明 void display(uchar n1 ,uchar n2,uchar n3,uchar n4); //显示程序声明 void main() //主程序 { init(); //调用初始化程序 while(1) //进入大循环 {

9、if(aa==20) //判断是否到了1S { miao++; //秒数加1 if(miao==60) //判断是否到了60秒 { miao=0; //秒数清0 fen++; //分数加1 if(fen==60) //判断是否到了60分 { fen=0; //分数到60则清0 } n1=fen/10; //第一个数码管显示分的十位 n2=fen%10; //第二个数码管显示分的个位 n3=miao/10; //第三个数码管显示秒的十位 n4=miao%10; //第四个数码管显示秒的个位 } display(n1,n2,n3,

10、n4); } } } void delay(uint z) //延时程序 { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); }   void display(uchar n1 ,uchar n2,uchar n3,uchar n4) { dula=1; //开段选 P0=table[n1]; //送分的十位 dula=0; //关段选 P0=0xff; //消隐 wela=1; //开位选 P0=0xfe; //选通分的十位 wela=0; //关位选 P0=0xff; //

11、消隐 delay(1); //延时 dula=1; //开段选 P0=table[n2]; //送分的个位 dula=0; //关段选 P0=0xff; //消隐 wela=1; //开位选 P0=0xfd; //选通分的个位 wela=0; //关位选 P0=0xff; //消隐 delay(1); //延时 dula=1; //开段选 P0=table[n3]; //送秒的十位 dula=0; //关段选 P0=0xff; //消隐 wela=1; //开位选 P0=0xfb; //选通秒的十位 wela=0; //关位选

12、 P0=0xff; //消隐 delay(1); //延时 dula=1; //开段选 P0=table[n4]; //送秒的个位 dula=0; //关段选 P0=0xff; //消隐 wela=1; //开位选 P0=0xf7; //选通秒的个位 wela=0; //关位选 P0=0xff; //消隐 delay(1); //延时 } void init(void) { } void timer0(void) interrupt 1 using 1 { TH0=(65536-50000)/256; //求模 TL0=(65536-50000)%256; //求余 aa++; }   分析:    (1)“sfr ISP_CONTR=0xe7;”定义ISP/IAP控制寄存器。    (2)“ISP_CONTR=0x20;”用软件复位到用户应用程序区(AP区),重新开始执行程序。    (3)从演示结果可看出,当数码管上的数字显示到“09”,再加一秒时,数字立即变成“00”,则说明程序复位从头开始执行了。

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服