输入输出接口扩展.ppt_第1页
输入输出接口扩展.ppt_第2页
输入输出接口扩展.ppt_第3页
输入输出接口扩展.ppt_第4页
输入输出接口扩展.ppt_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MCS-51系列单片机内部有4个双向的8位并行I/O端口:P0、P1、P2和P3口。 在实际的应用系统中,P0、P2、P3口往往用来代替系统总线使用,数据口仅剩下P1口了。另外,单片机内部I/O口的功能也过于简单,只有数据锁存和缓冲功能,而没有状态寄存和命令寄存功能,难以满足复杂的I/O操作的要求。 鉴于单片机的I/O资源比较有限,在实际应用中不得不使用扩展的方法,以增加I/O口的数量,强化I/O的功能。 常用的I/O扩展有以下两种形式: 简单I/O接口芯片的扩展 可编程I/O接口电路的扩展,4.3 输入/输出接口扩展,问题的提出,什么样的芯片是简单芯片?复杂芯片又是什么样的?,简单芯片:是指那些虽具有数据缓冲或锁存功能,但自身仅有数据的输入或输出及选通端或时钟端,却没有地址线和读写控制线,如采用TTL或CMOS数字集成电路构成的三态门、寄存器、三态缓冲寄存器等中小规模的集成电路芯片。 可编程逻辑器件: 那些不仅具有数据的输入或输出、具有选通端或时钟端,而且还具有地址线和读写控制线的芯片,他们一般具有片内的状态字寄存器、命令字寄存器,允许通过软件编程来改变它的接口功能或状态。如:intel 8255、8155 、8279 etc.,简单的I/O口扩展通常是采用TTL或CMOS电路锁存器、三态门等作为扩展芯片(74LS244、74LS245、74LS273、74LS373、74LS377等),通过P0口来实现扩展的一种方案。它具有电路简单、成本低、配置灵活的特点。 简单的I/O口扩展主要包括: 缓冲器扩展输入口(三态门: 74LS244、74LS245等) 输入接口的主要功能:解决数据输入的缓冲问题,如74ls244(具有三态缓冲功能,这样才可以和数据总线相连)。 锁存器扩展输出口(锁存器: 74LS273、74LS373、 74LS377等) 输出接口的主要功能:进行数据的保持(数据锁存)。,4.3.1简单I/O接口芯片的扩展,利用74LS244进行输入口的扩展,74LS244引脚封装图,MCS-51与74LS244的接口电路图,缓冲器扩展输入口,74LS244是一种8位的三态缓冲器。当它的控制端1G(2G) 为低电平时,输出等于输入;当它的控制端1G(2G)为高电平 时,输出呈高阻态。 在上图的电路中,P2.7与RD相或后作为244的使能信号, 单片机的P0口与74LS244的8位输出端相连,所以74LS244的 地址为:7FFFH(P2.7=0即A15=0,A14A0为任意,这里取1, 得到7fffh,当然,0000h7fffh中任一地址均可)。 当单片机从74LS244读取数据时应该为: MOV DPTR,#7FFFH ;将74LS244的口地址送入DPTR MOVX A,DPTR ; 74LS244的端口读取数据到ACC ;执行时,RD有效,p2.7=0,选通了74ls244。 注意: MOVX A,DPTR; 读操作,产生 RD 低电平信号,利用74LS273进行输出口的扩展,74LS273引脚封装图,MCS-51与74LS273的接口电路图,锁存器扩展输出口,74LS273是一种8D触发器器。当它的控制端信号有效且触发端信号有效时,输入D1-D8端的数据被锁存到8D触发器中并形成输出Q1-Q8。 在上图的电路中,P2.7与WR相或后作为74LS273的锁存信号(clk下降沿有效),单片机的P0口与74LS273的8位输出端相连,所以74LS273的地址为:7FFFH。(仅使P2.7=0,地址可以是0000h7fffh中的任一个。) (仅当p2.7=0且WR=0时,clk才为0,数据被打入。) 所以,当单片机从74LS244输出数据是应该为:,MOV DPTR,#7FFFH ;将74LS244的口地址送入DPTR MOVX DPTR,A ;从ACC 向74LS244的端口写数据 ; P2.7=0 写操作,产生 WR 低电平信号,一、可编程芯片8155的扩展,是指芯片功能可由指令来确定,即需要对其编程。,8155的引脚封装图,8155的内部接口图,8155各引脚的功能为: 地址/数据线AD0AD7(8条):是低8位地址线和数据线的共用输入总 线,常和MCS-51单片机的P0口相连,用于分时传送地址和数据; PA0PA7、PB0PB7:为A、B口线,用于和外设之间传递数据; PC0PC5为C端口线,既可与外设传送数据,也可以作为A、B口的控制 联络线; CS:片选线,低电平有效。,1. 8155的内部结构,RESET:复位线,通常与单片机的复位端相连。 ALE:地址锁存线,高电平有效。 IO/M:RAM或I/O口的选择线。当为0时,选中8155的256 B RAM;当为1时,选中8155片内3个I/O端口以及命令/状态寄存器和定时/计数器。 RD和WR:读/写线,控制8155的读、写操作。 TMRIN(TI):定时/计数器的脉冲输入端。 TMROUT(TO):定时/计数器的输出信号端。 VCC:电源端。 GND:接地端。,8155当IO/M为0时,单片机对8155的RAM进行操作,共256B,低八位的地址为:00H0FFH。 8155当IO/M为1时,单片机对8155的I/O口进行操作。,8155内部寄存器地址分配表,2. 8155的RAM和I/O口地址编码,芯片8155 的I/O口和定时器/计数器的工作方式可以通过对8155的命令寄存器写入控制字来实现。 8155的命令寄存器和状态寄存器使用同一个地址。 8155的命令字 命令字主要规定了8155的I/O口和定时器的工作方式。 8255的状态字 状态字的内容包含8155的I/O口的工作状态标志。,3. 8155的命令字和状态字,PA口,PB口,PC口,MCS-51单片机与8155的接口,8155的命令字格式,8155的状态字格式,基本I/O方式:联络线由程序指定,对计数器输入输出不起控制作用,没有中断能力,输出联络线由软件程序来控制。 选通I/O方式:由PC口的低三位作联络线使用,其余位作I/O线;输入联络线可以起选通数据锁存作用;中断时有中断请求信号产生;各个联络线为: INTRA:中断请求输出标志。 BFA:PA口缓冲器/空输出信号。 STBA:数据选通输入信号。,8155的I/O的工作方式,8155片内的定时器/计数器是一个14位的减计数器。计数器分为高6 位和低8位寄存器,它的计数初值有程序预置。它的格式为:,高字节寄存器(M2和M1是工作方式码),低字节寄存器(T0T13为计数器的初值),4. 8155的定时器/计数器,8155定时器/计数器四种操作方式和输出波形,1)8155RAM的使用 例题:假定在MCS-51单片机的内部RAM中,从30H开始存放一组数据,字节数为50,要求将该组数据存入8155 RAM中,起始地址为7E00H。 程序为: RAMWR:MOV R0,#30H MOV DPTR,#7E00H MOV R2,#50 RAMW:MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R2,RAMW ,思考:如果要把8155 RAM中,从地址为7E00H开始的50个数据存入单片机的30H开始的数据存储单元中,应该如何处理?,5. 8155的应用,2) 8155的I/O口的使用 例题:假定8155的PA口接8个乒乓开关,8155的PB口接8个指示灯,要求PB显示PA口的开关状态。命令/状态寄存器地址为7E00H,PA地址为7E01H ,PB地址为7E02H 。8155的命令字为:02H( PA和 PB为基本I/O方式)。 程序为: ORG 0000H MOV DPTR,#7E00H MOV A,#02H MOV DPTR,A LOOP: MOV DPTR,#7F01H MOVX A,DPTR INC DPTR MOVX DPTR,A SJMP LOOP END,写命令字,送入命令/状态寄存器,8155的A口数据送入ACC,ACC数据写入8155的B口,循环执行,8255是一个通用可编程接口电路。其具有的资源为: 三个可编程的8位并行I/O口PA、PB和PC口; PC口可以按位进行操作。,8255A的引脚封装图,数据总线,PA口,PB口,PC口,控制总线,二、可编程芯片8255的扩展,8255的内部接口图,8255各引脚的功能为: 地址/数据线D0D7:是低8位地址线和数据线的共用输入总线,常和MCS-51单片机的P0口相连,用于分时传送地址和数据; PA0PA7、PB0PB7:为A、B口线,用于和外设之间传递数据; PC0PC7为C端口线,既可与外设传送数据,也可以作为A、B口的控制联络线; CS:片选线,低电平有效。 RESET:复位线,通常与单片机的复位端相连。 A0和A1:I/O口的选择线,通过它可以选择PA口、PB口、PC口和控制寄存器。 RD和WR:读/写线,控制8255的读、写操作。 VCC:电源端。 GND:接地端。,1. 8255的内部结构,2. 8255A的端口选择和基本操作,8255有两个控制字: 方式控制字 方式控制字用于设定单片机的PA口、PB口和PC口的工作方式。 置位/复位控制字 置位/复位控制字用于对8255A的PC口按位进行操作。,3. 8255A的控制字,方式控制字,置位/复位控制字,8255A有3种工作方式 工作方式0 基本的输入/输出方式 工作方式1 选通工作方式 工作方式2 双向传送方式,只有PA口工作于此方式。,4. 8255A的工作方式,开关量输入,显示输出,5. 8255A和MCS-51单片机的接口,例1:在上图所示的8255与单片机的连接电路中, 8255A的PC口(7FFEH)作为开关量的输入; 8255A的PA口(7FFCH)作为信号的输出; 要求8个数码管显示PC口输入的外部信号状态。 8255A的工作方式字设定: 由题意可知8255的工作方式字应该为:89H,6.8255A应用举例:,流程图:,ORG 0000H MOV DPTR,#7FFFH MOV A,#89H MOVX DPTR,A LOOP:MOV DPTR,#7FFEH MOVX A,DPTR MOV DPTR,#7FFCH MOVX DPTR,A SJMP LOOP END,写命令字,送入命令/状态寄存器,8255的C口数据送入ACC,ACC数据写入8255的A口,循环执行,程序清单:,例2:在8255与单片机的连接电路中,使用置位/复位控制字实现在8255A的PC7输出方波。 解:8255A的控制寄存器(7FFEH)的设定 D7:恒为0; D6-D4:未使用; D3-D1:PC口的位选择; D0:置位时为1,复位时为0。 所以: 当PC7输出高电平时,控制寄存器应该为:0FH; PC7输出低电平时,控制寄存器应该为:0EH。,ORG 0000H MOV DPTR,#7FFFH LOOP: MOV A,#0FH MOVX DPTR,A MOV R2,#80H DJNZ R2,$ MOV R2,#80H MOV A,#0EH MOVX DPTR,A DJNZ R2,$ SJMP LOOP END,写PC7=1的命令字,延时,写PC7=0的命令字,循环执行,程序清单:,本章要求: 掌握MCS-51单片机的三总线形成; 了解常用的程序存储器、数据存储器,以及它们与单片机如何进行连接,连接好的存储单元如何确定其地址; 掌握用缓冲器、锁存器等扩展简单I/O接口电路; 掌握8155可编程接口芯片的基本性能、端口与存储单元的编址方法,以及与单片机的连接电路,口的基本应用; 了解8155定时器的应用; 掌握8255A的功能及应用。,小 结,后面内容直接删除就行 资料可以编辑修改使用 资料可以编辑修改使用 资料仅供参考,实际情况实际分析,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论