单片机原理与应用-8单片机的基本扩展1.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机原理与应用-8单片机的基本扩展1.ppt

单片机的并行I/O口及其扩展 引言 一、输入输出与接口 二、储存器扩展 三、MCS-51的片内并行I/O口 四、简单并行I/O接口扩展 I/O接口从数据交换方式上分为并行接口和串行接口两种。 并行接口用于连接并行传送输入/输出数据的设备,一次传送宽度为一个字节的数据。在数据传送过程中,不改变数据的传送方式,因此数据传送速度快,接口电路比较简单,但接口线数多,包括并行输入/输出线、地址译码和控制线等,多用于短距离传送场合。 一、输入输出与接口 输入输出接口概念 I/O 接口的作用与分类 CPU与外设的数据传送方式 2、CPU与外设的硬件联接 外设I/O信息的组成按其作用可区分为以下三种不同的类型:⑴数据信息、⑵状态信息、⑶控制信息。所以一个典型的I/O接口包括数据、状态、控制三个端口。 从硬件角度来说,这三个端口相当于是CPU的寄存器或系统的存储器。CPU用I/O指令通过对端口地址寻址而对其直接访问。(统一编址,对I/O的访问就是对对应地址的读写操作) 数据端口可以是双向的,状态端口对CPU来说只作输入操作,而控制端口对CPU来说只作输出操作,因此有时状态端口、控制端口合用一个端口地址,再用读、写信号分开访问。 3、CPU对外设的软件控制 ⑴端口独立寻址I/O方式: 该方式下,I/O端口地址不占用存储器空间,端口地址单独编址以构成I/O空间,CPU要用专门设置的输入输出指令来访问I/O端口。这种方式也称为专用I/O指令寻址方式。 CPU在执行输入(IN)指令、输出(OUT)指令访问I/O端口时,硬件上会产生有效的RD信号或WR信号,同时使专门用于分辨对存储器还是I/O端口访问的M/IO信号为低电平有效。 该方式的主要优点是有专门的输入输出指令,与存储器、寄存器访问指令有明显的区别,使得编出的程序更加清晰明朗、易于理解。Z80CPU、8086系列CPU等采用该方式。 ⑵存储器映象的I/O方式: 该方式下,I/O端口与寄存器、数据存储器单元统一编址,即数据存储空间中划出一部分给外设端口,CPU不设置专门的输入输出指令,将外设端口当作一个寄存器或数据存储器的单元来对待。 该方式的主要优点是使得CPU对外设端口的操作更为方便和灵活,不仅可以实现数据传送,而且还可以对端口内容进行算术运算、逻辑操作、移位操作甚至位操作。另外,该方式还便于端口地址的寄存器化,例如MCS-51CPU的21个特殊功能寄存器实际上许多都是端口地址寄存器化的结果。 MCS-51CPU、MCS-96CPU、6502CPU、6800CPU等采用该方式。 I/O 接口的作用与分类 3、接口的分类 CPU与外设的数据传送方式 二、储存器扩展 无条件传送方式 程序储存器ROM扩展和数据储存器RAM扩展 三总线结构 AB、DB、CB 片选方法:线选法和译码法 三、MCS-51的片内并行I/O口 MCS-51片内并行口 P0口 P1口 P2口 P3口 片内并口操作指令 片内并口应用实例 MCS-51片内并行口 MCS-51片内并行口端口读写 接口内部的8位数据锁存器为并行口的输出端口,CPU指令可以对其进行写操作;接口内部有两个8位的数据缓冲器为并行口的输入端口,读锁存信号寻址的是锁存器输入缓冲器,读引脚信号寻址的是片外引脚输入缓冲器。 P0口 P0口用作通用并行I/O口 P0口用作地址/数据复用总线 当分时提供低8位地址和输出数据时,控制信号为“1”,输出“地址/数据”的信号,地址/数据信号为“0”或为“1”。当P0口作片外地址/数据总线使用时,不宜将它当作并行I/O口使用。 P1口的位结构 P2口 P2口的位结构 P3口 P3口的位结构 片内并口操作指令 1、直接寻址指令 1 从P0~P3口直接输入数据: MOV A,PX ;X=0~3 MOV Rn,PX MOV @Ri,PX MOV Direct,PX ADD A,PX ADDC A,PX SUBB A,PX CJNE A,PX,rel PUSH PX 3 对P0~P3口数据进行改写: 2、位操作指令 4 读入P0~P3口的数据位: MOV C,PX.Y JB PX.Y,rel JNB PX.Y,rel ANL C,PX.Y(/PX.Y) ORL C,PX.Y(/PX.Y) 5 修改P0~P3口的数据位: MOV PX.Y,C CLR PX.Y SETB PX.Y CPL PX.Y JBC PX.Y,rel P0-P3作I/O口有两种读口操作:读引脚操作和“读-修改-写”操作。 片内并口应用实例(设晶振频率为12MHz) 编程使P1口所接LED发光管循环点亮,每个LED点亮时间为1S。 解

您可能关注的文档

文档评论(0)

书屋 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档