网站大量收购闲置独家精品文档,联系QQ:2885784924

单片机理论基础.pptVIP

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机理论基础

4) 堆栈和堆栈指针 图2.5 MCS–51单片机堆栈 3.特殊功能寄存器块 特殊功能寄存器(SFR,即Special Function Registers),又称为专用寄存器,专用于控制、管理片内算术逻辑部件、并行I/O口、串行I/O口、定时器/计数器、中断系统等功能模块的工作。用户在编程时可以置数设定,却不能自由移作它用。在51子系列单片机中,各专用寄存器(PC例外)与片内RAM统一编址,且作为直接寻址字节,可直接寻址。除PC外,51子系列有18个专用寄存器,其中3个为双字节寄存器,共占用21个字节;52子系列有21个专用寄存器,其中5个双字节寄存器,共占用26个字节。按地址排列的各特殊功能寄存器名称、表示符、地址等如表2.5所示。其中有12个专用寄存器可以位寻址,它们字节地址的低半字节都为0H或8H(即可位寻址的特殊功能寄存器字节地址具有能被8整除的特征),共有可寻址位12×8-3 (未定义)=93位。 表2.5 特殊功能寄存器名称、表示符、地址一览表 表2.5 特殊功能寄存器名称、表示符、地址一览表 2.3 并行输入/输出接口 2.3.1 P0口 1.P0口结构 P0口是一个三态双向口,可作为地址/数据分时复用口,也可作为通用I/O接口。其1位的结构原理如图2.9所示。P0口由8个这样的电路组成。锁存器起输出锁存作用,8个锁存器构成了特殊功能寄存器P0;场效应管(FET)V1、V2组成输出驱动器,以增大带负载能力;三态门1是引脚输入缓冲器;三态门2用于读锁存器端口;与门3、反相器4及模拟转换开关构成了输出控制电路。 图2.6 P0口1位结构图 2.地址/数据分时复用功能 当P0口作为地址/数据分时复用总线时,可分为两种情况:一种是从P0口输出地址或数据,另一种是从P0口输入数据。 在访问片外存储器而需从P0口输出地址或数据信号时,控制信号应为高电平1,使转换开关MUX把反相器4的输出端与V1接通,同时把与门3打开。当地址或数据为1时,经反相器4使V1截止,而经与门3使V2导通,P0.x引脚上出现相应的高电平1; 当地址或数据为0时,经反相器4使V1导通而V2截止,引脚上出现相应的低电平0。这样就将地址/数据的信号输出。 3.通用I/O接口功能 当P0口作为通用I/O口使用,在CPU向端口输出数据时,对应的控制信号为0,转换开关把输出级与锁存器Q端接通,同时因与门3输出为0使V2截止,此时,输出级是漏极开路电路。当写脉冲加在锁存器时钟端CLK上时,与内部总线相连的D端数据取反后出现在Q端,又经输出V1反相,在P0引脚上出现的数据正好是内部总线的数据。当要从P0口输入数据时,引脚信息仍经输入缓冲器进入内部总线。 (1) 在输出数据时,由于V2截止,输出级是漏极开路电路,要使1信号正常输出,必须外接上拉电阻。 (2) P0口作为通用I/O口使用时,是准双向口。其特点是在输入数据时,应先把口置1(写1),此时锁存器的Q端为0,使输出级的两个场效应管V1、V2均截止,引脚处于悬浮状态,才可作高阻输入。因为,从P0口引脚输入数据时,V2一直处于截止状态,引脚上的外部信号既加在三态缓冲器1的输入端,又加在V1的漏极。假定在此之前曾输出锁存过数据0,则V1是导通的,这样引脚上的电位就始终被箝位在低电平,使输入高电平无法读入。因此,在输入数据时,应人为地先向口写1,使V1、V2均截止,方可高阻输入。所以说P0口作为通用I/O口使用时,是准双向口。但在P0用作地址/数据分时复用功能连接外部存储器时,由于访问外部存储器期间,CPU会自动向P0口的锁存器写入0FFH,对用户而言,P0口此时则是真正的三态双向口。 4.端口操作 MCS-51单片机有不少指令可直接进行端口操作,例如: ANL P0,A ;(P0)←(P0)∧(A) ORL P0,#data ;(P0)←(P0)∨data DEL P0 ;(P0)←(P0) -1 这些指令的执行过程分成“读-修改-写”三步,先将P0口的数据读入CPU,在ALU中进行运算,运算结果再送回P0。执行“读-修改-写”类指令时,CPU是通过三态门 2读回锁存器Q端的数据来代表引脚状态的。 综上所述,P0口在有外部扩展存储器时被作为地址/数据总线口,此时是一个真正的双向口;在没有外部扩展存储器时,P0口也可作为通用的I/O接口,但此时只是一个准双向口。另外,P0口的输出级具有驱动8个LSTTL负载的能力,即输

文档评论(0)

zijingling + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档