AT89S51单片机原理及应用技术王全电子课件第2章节.ppt

AT89S51单片机原理及应用技术王全电子课件第2章节.ppt

  1. 1、本文档共83页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.5 AT89S51的工作方式 当硬件复位时,IDL位被硬件自动复位为0,从而使CPU退出空闲工作方式。 当使用硬件复位退出空闲方式时,在复位逻辑电路发挥控制作用前,有长达两个机器周期时间,单片机要从断点处(IDL位置1指令的下一条指令处)继续执行程序。在这期间,片内硬件阻止CPU对片内RAM的访问,但不阻止对外部RAM或I/O口的访问。为了避免在硬件复位退出空闲方式时出现对外部RAM或I/O口的不希望的写入,在进入空闲方式时,紧随IDL位置1指令后的不应是写外部RAM或I/O口的指令。 2.5 AT89S51的工作方式 3.空闲工作方式时的WDT 在进入空闲工作方式时,WDT的工作状态由AUXR中的WDIDLE位的值决定。所以,在进入空闲工作方式前应先设置AUXR中的WDIDLE位,以确认WDT是否继续计数。 当WDIDLE=0时,WDT在空闲方式下保持继续计数。此时,由于WDT正常工作,为防止WDT计数溢出复位单片机,用户可设计一个定时器,定时申请中断使CPU定时退出空闲方式,然后复位WDTRST,再重新进入空闲方式。 当WDIDLE=1时,WDT在空闲方式下暂停计数。在CPU退出空闲方式后,WDT才恢复计数。 2.5 AT89S51的工作方式 2.5.4 掉电工作方式 掉电工作方式是CPU通过执行指令使振荡器停止工作,片内的功能部件都停止工作。在掉电保持方式下,芯片VCC可由备用电源供电,内部RAM、PC、SFR等都保持进入掉电工作方式前的状态不变。掉电工作方式时引脚的状态见表2-9。 表2-9 掉电工作方式时引脚的状态 程序存储器 ALE PSEN P0口 P1口 P2口 P3口 内部ROM 0 0 数据 数据 数据 数据 外部ROM 0 0 浮空 数据 数据 数据 2.5 AT89S51的工作方式 1. 掉电工作方式的进入 CPU通过执行指令把PCON寄存器的PD位设置为1,便进入掉电工作方式。在掉电方式下,振荡器停止工作,进而所有功能部件都停止工作。 2. 掉电工作方式的退出 掉电工作方式的退出有两种方法,一是中断方式,二是硬件复位方式。 在掉电工作方式时,若有任一个允许的外部中断请求,PD位被片内硬件自动清0,从而退出掉电工作方式。CPU响应中断,执行完中断服务子程序返回时,将从设置掉电工作方式指令的下一条指令(断点处)继续执行程序。 当硬件复位时,PD位被硬件自动复位为0,从而使CPU退出掉电工作方式。硬件复位时要重新初始化SFR和PC,但不改变片内RAM的内容。当VCC恢复到正常工作电压之前,硬件复位信号应该是无效的。中断请求信号和硬件复位信号有效时应保持足够长的时间,以使振荡器重新启动并稳定工作。 2.5 AT89S51的工作方式 3.掉电工作方式时的WDT 掉电方式下振荡器停止工作,意味着WDT也就停止计数。用户在掉电方式下不需要操作WDT。 在中断方式退出掉电工作方式时,WDT会按照进入掉电工作方式前的状态继续工作。为防止WDT在掉电工作方式退出过程中溢出复位,在系统进入掉电工作方式前应先对寄存器WDTRST复位。 在复位方式退出掉电工作方式时,WDT和正常情况下系统使用WDT的情况一样。 2.5 AT89S51的工作方式 2.5.5 编程和校验工作方式 AT89S51的片内有4KB Flash存储器,可用于存储系统程序,支持在系统编程(ISP)。如何把程序写入到4KB Flash存储器中,即Flash存储器的编程问题,此时单片机工作在编程工作方式。AT89S51的Flash存储器有并行和串行两种编程模式,通用编程器一般采用并行编程模式,在系统编程(ISP)一般采用串行编程模式。在编程过程中一般同时完成擦除、程序校验和加密工作。 AT89S51出厂时,Flash存储器处于全部空白状态(各单元均为FFH),可直接进行编程。若不全为空白状态(单元中有不是FFH的),应首先将芯片擦除后,方可写入程序。AT89S51的Flash存储器可循环写入/擦除10000次,数据保存时间为10年,片内Flash存储器有低电压编程(VPP=5V)和高电压编程(VPP =12V)两类芯片。低电压编程可用于在线编程,高电压编程与一般常用的EPROM编程器兼容。在AT89S51芯片的封装面上标有低电压编程还是高电压编程的编程电压标志。 2.5 AT89S51的工作方式 Flash存储器的编程可采用通用编程器编程,也可采用在系统编程(ISP)

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档