欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    第七章MCS-51并行口的扩展.ppt

    • 资源ID:2551906       资源大小:1.27MB        全文页数:34页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第七章MCS-51并行口的扩展.ppt

    第七章 MCS-51并行口的扩展,MCS51单片机内部有4个并行口,当内部并行口不够用时可以外扩并行口芯片。可外扩的并行口芯片很多,分成2类:不可编程的并行口芯片(74LS3734和74LS245)和可编程的并行口芯片(8255)。 7.1 不可编程并行口芯片的扩展 7.2 可编程并行口芯片的扩展,7.1.1 74LS373的扩展 7.1.2 74LS245的扩展,7.1 不可编程并行口芯片的扩展,1、 74LS373的结构 2、 74LS373的引脚 3、 74LS373与89C51的连接,7.1.1 74LS373的扩展,连接图,D,CP,Q,D,CP,Q,D,CP,Q,D,CP,Q,D,CP,Q,D,CP,Q,D,CP,Q,D,CP,Q,D0,D1,D2,D3,D4,D5,D6,D7,Q0,Q1,Q,Q3,Q4,Q5,Q6,Q7,LE,OE,思考,ALE,RD,WR,PSEN,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,89C51,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,A0,A1,A2,A3,A4,A5,A6,A7,OE,LE,D0,D1,D2,D3,D4,D5,D6,D7,74LS373,DB,AB,CB,OE,D0,D7,74LS373,AB15,AB0,AB15,地址码的计算,LE,74LS373与89C51的连接图,+,Q7,Q6,Q5,Q4,Q3,Q2,Q1,Q0,计算74LS373的地址(8051送出何种地址码时可以将数送到Q端) P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 * * * * * * * * * * * * * * *,ALE,RD,WR,PSEN,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,89C51,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,A0,A1,A2,A3,A4,A5,A6,A7,OE,LE,D0,D1,D2,D3,D4,D5,D6,D7,74LS373,DB,AB,CB,OE,D0,D7,74LS373,AB15,AB0,AB15,LE,思考:2片74LS373与89C51的连接图,+,Q7,Q6,Q5,Q4,Q3,Q2,Q1,Q0,OE,D0,D7,74LS373,LE,+,Q7,Q6,Q5,Q4,Q3,Q2,Q1,Q0,计算74LS373的地址(8051送出何种地址码时可以将数送到Q端) P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 1 * * * * * * * * * * * * * * 1 0 * * * * * * * * * * * * * *,AB14,1、 74LS245的结构 2、 74LS245的引脚 3、 74LS245与89C51的连接,7.1.2 74LS245的扩展,连接图,B0,A0,思考,B1,A1,B2,A2,B3,A3,B4,A4,B5,A5,B6,A6,B7,A7,+,+,E,DIR,ALE,RD,WR,PSEN,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,89C51,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,A0,A1,A2,A3,A4,A5,A6,A7,OE,LE,D0,D1,D2,D3,D4,D5,D6,D7,74LS373,DB,AB,CB,DIR,B0,B7,74LS245,AB15,AB0,AB15,地址码的计算,E,74LS245与89C51的连接图,+,A7,A6,A5,A4,A3,A2,A1,A0,计算74LS245的地址(8051送出何种地址码时可以将数由A端传到B端) P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 * * * * * * * * * * * * * * *,ALE,RD,WR,PSEN,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,89C51,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,A0,A1,A2,A3,A4,A5,A6,A7,OE,LE,D0,D1,D2,D3,D4,D5,D6,D7,74LS373,DB,AB,CB,DIR,B0,B7,74LS245,AB15,AB0,AB15,E,思考:2片74LS245与89C51的连接图,+,A7,A6,A5,A4,A3,A2,A1,A0,DIR,B0,B7,74LS245,E,+,A7,A6,A5,A4,A3,A2,A1,A0,计算74LS245的地址 P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 1 * * * * * * * * * * * * * * 1 0 * * * * * * * * * * * * * *,AB14,7.2.1 8255的结构 7.2.2 8255的引脚 7.2.3 8255的工作方式 7.2.4 8255的控制字 7.2.5 8255的应用,7.2 可编程并行口芯片的扩展(8255),8255有三个并行的8位I/O接口,分别称为A口、B口、C口。也就是说,扩展一片8255则可扩展24位并行端口。,7.2.1 8255的结构,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,7.2.1 8255的结构,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,8位的双向的三态缓冲器。作为8255A与系统总线连接的界面,输入/输出的数据,CPU的编程命令以及外设通过8255A传送的工作状态等信息,都是通过它来传输的。,7.2.1 8255的结构,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,读/写控制逻辑电路负责管理8255A的数据传输过程。它接收片选信号及系统读信号、写信号、复位信号RESET,还有来自系统地址总线的口地址选择信号A0和A1。,7.2.1 8255的结构,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对C口的指定位进行置/复位的操作。,A组控制电路用来控制A口及C口的高4位。 B组控制电路用来控制B口及C口的低4位。,7.2.1 8255的结构,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,A口是一个独立的8位I/O口,它的内部有对数据输入/输出的锁存功能。,C口可以看作是一个独立的8位I/O口;也可以看作是两个独立的4位I/O口。也是仅对输出数据进行锁存。,B口也是一个独立的8位I/O口,仅对输出数据的锁存功能。,7.2.2 8255的引脚,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,8255与89C51的连接图,7.2.2 8255的引脚,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,D0-D7:8位,双向,三态数据线,用来与系统数据总线相连。,RD:读信号,输入,控制8255将数据或控制信息送到CPU。,WR:写信号,输入,控制CPU将数据或状态信息送到8255A。,CS:片选,输入,用来决定芯片是否被选中。,A1,A0:内部口地址的选择,输入。这两个引脚上的信号组合决定对8255A内部的哪一个口或寄存器进行操作。,RESET:复位信号,高电平有效,输入,用来清除8255A的内部寄存器,并置A口,B口,C口均为输入方式。 注意:8255工作之前,硬件上必须先复位,使8255内部的各个部件处于待命状态。,8255A的操作功能表,7.2.2 8255的引脚,数据 总线 缓冲器,读写 控制 逻辑,A组 控制,B组 控制,口A,口C 高4,口C 低4,口B,D0D7,RD,WR,CS,A0,A1,RESET,PA0PA7,PB0PB7,PC4PC7,PC0PC3,PA0PA7:A组数据信号,用来连接外设。,PB0PB7:B组数据信号,用来连接外设。,PC0PC7:C组数据信号,用来连接外设或者作为控制信号。,8255 与 89C51 的 连 接 图,ALE,RD,WR,PSEN,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,89C51,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,A0,A1,A2,A3,A4,A5,A6,A7,OE,LE,D0,D1,D2,D3,D4,D5,D6,D7,74LS373,DB,AB,CB,AB0,AB15,AB12,AB1,AB0,D0D7,RD,WR,CS,A0,A1,RESET,AB15,8255,PA0PA7,PC0PC7,PB0PB7,各端口地址码的计算,89C51送出何种地址码时选中端口 P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 口A 0 * * * * * * * * * * * * * 0 0 口B 0 * * * * * * * * * * * * * 0 1 口C 0 * * * * * * * * * * * * * 1 0 控制 0 * * * * * * * * * * * * * 1 1,8255A的操作功能表,WR、RD、CS、A1、A0这几个信号的组合决定了8255A的所有具体操作:,7.2.3 8255的工作方式,8255A有三种工作方式: 方式0简单输入/输出查询方式;A,B,C三个端口均可。 最为常用。 方式1选通输入/输出中断方式;A ,B,两个端口均可。 方式2双向输入/输出中断方式。只有A端口才有。 注意:工作方式的选择可通过向控制端口写入方式控制字来实现。,方式0,方式0为一种简单的输入/输出方式,没有规定固定的应答联络信号,可用A,B,C三个口的任意一位充当查询信号,其余I/O口仍可作为独立的端口和外设相连。 即:PA0PA7,PB0PB7,PC0PC7均可作为I/O线使用,没有限制一定传送什么信号;口A、口B、口C高4位和口C低4位可以分别设定为输入口或输出口。 方式0的应用场合有两种:一种是无条件传送;一种是查询传送。,D0D7,RD,WR,CS,A0,A1,RESET,8255,PA0PA7,PC0PC7,PB0PB7,+5V,STB,BUSY,微型打印机,D0D7,方式1,方式1是一种选通I/O方式,A口和B口仍作为两个独立的8位I/O数据通道,可单独连接外设,通过编程分别设置它们为输入或输出。而C口则要有6位(分成两个3位)分别作为A口和B口的应答联络线,其余2位仍可工作在方式0,可通过编程设置为输入或输出。即:口A和口B作为数据口使用;口分成C高4位和口C低4位,分别配合口A和口B工作,此时口C高4位和口C低4位分别作为口A和口B的状态口,口C的某些引脚规定为传送状态信号,不能作I/O口线使用,传送任意信号。 方式1主要用于中断应答式数据传送,也可用于连续查询式数据传送。输入和输出时8255与外围设备的连接方式不同,数据传送过程也不同。,D0D7,RD,WR,CS,A0,A1,RESET,8255,PA0PA7,PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7,PB0PB7,+5V,STB,BUSY,微型打印机,D0D7,A、B通道工作于方式1时引脚规定,当A、B通道作为输入通道时,PC0PC7的功能分配如图a所示。 STB为外设向8255提供的输入选通信号,当外设数据准备好,并稳定在数据线后,向输入低电平信号,8255必须在收到的下降沿后,才把数据线上外围设备的信息输入端口锁存器。 IBF为端口锁存器满/空标志线。IBF有效,表明输入缓冲器已满。IBF是8255向外设输出的信号,高电平表示端口缓冲器已满,等待CPU读取,只有在CPU读取之后,上升沿使IBF为低电平,表示数据已读完,才允许外设继续送数。 INTR为中断请求信号。高电平有效,由8255发出。在中断允许的条件下,当=1和IBF=1时,INTR被置1,发出中断请求。,当A、B通道作为输出通道时,PC0PC7的分配如图b所示。 OBF为输出缓冲器已满标志,也是8255向外设输出的信号,低电平有效,表示CPU已将数据装入8255端口的输出缓冲器中,通知外设可以取数。CPU向8255写入数据后,在WR的上升沿时使OBF变为低电平。 ACK为外设向8255提供的输入应答信号,外设把端口数据取走之后,为低电平,表示外设已取走数据,CPU可以再送新的数据。,方式2,方式2为双向选通I/O方式,只有A口才有此方式。这时,C口有5根线用作A口的应答联络信号,其余3根线可用作方式0,也可用作B口方式1的应答联络线。 方式2就是方式1的输入与输出方式的组合,各应答信号的功能也相同。而C口余下的PC0PC2正好可以充当B 口方式1的应答线,若B口不用或工作于方式0,则这三条线也可工作于方式0。 按方式2工作时,A口既可工作于查询方式,又可工作于中断方式。 A通道工作于方式2时PC0PC7的功能,A通道工作于方式2时PC0PC7的功能,当A通道工作于方式2时,PC0PC7的功能分配如图所示。图中各功能的含义与工作方式1时的含义一样。由于只有A通道才能工作于方式2,所以所有的应答联络线都是与A通道配合的。 8255的C口专用功能见下表:,7.2.4 8255的控制字,8255的控制字存于控制字寄存器中。 8255有2个控制字:方式控制字和口C按位置/复位控制。 1、方式控制字 方式控制字决定了8255的工作方式。8255工作之前软件上必须初始化,即将方式控制字写入控制字寄存器中,以指定端口的工作方式。 2、口C的按位置/复位控制字 只有C口才有,它是通过向控制口写入按指定位置位/复位的控制字来实现的。C口的这个功能可用于设置方式1的中断允许,可以设置外设的启/停等。 3、8255的初始化 8255是可编程的接口芯片,在使用8255之前,硬件上必须复位,即给RESET端送一个高电平;软件上必须初始化,即向8255写入方式控制字,以确定8255的工作方式。,方式控制字,方式控制字决定了8255的工作方式。8255工作之前软件上必须初始化,即将方式控制字写入控制字寄存器中,以指定端口的工作方式。 8255A的控制字格式与各位的功能如图所示。,标志位,D7,A组控制,D6,A口,D5,C口高4,D4,B组控制,D3,A组控制,D2,B口,D1,C口低4,D0,D7:标志位。D7=1 D6、D5:A组工作方式选择。 0 0 口A和口C高4工作于方式0 0 1 口A和口C高4工作于方式1 1 × 口A工作于方式2 D4:D4=0 口A为输出口; D4=1 口A为输入口。 D3:D3=0 口C高4为输出口; D3=1 口C高4为输入口。 D2: B组工作方式选择。 0 口B和口C低4工作于方式0 1 口B和口C低4工作于方式1 D1:D1=0 口B为输出口; D4=1 口B为输入口。 D0:D0=0 口C低4为输出口; D3=1 口C低4为输入口。,例 某系统要求使用8255A的A口方式0输入,B口方式0输出,C口高4位方式0输出,C口低4位方式0输。 解:控制字为: 10010001 即91H 初始化程序为: MOV A, # 91H MOV DPTR,#0023H MOVX DPTR,A,口C按位置/复位控制字,口C按位置/复位控制字只有C口才有,它是通过向控制口写入按指定位置位/复位的控制字来实现的。C口的这个功能可用于设置方式1的中断允许,可以设置外设的启/停等。 8255A的口C按位置/复位控制字格式与各位的功能如图所示。,标志位,D7,*,D6,*,D5,C 口,D4,引 脚,D3,*,D2,选 择,D1,置1/清0,D0,D7:标志位。D7=0 D6、D5、D4:未使用。 D3、D2、D1:C口引脚选择。 0 0 0 选中PC0 0 0 1 选中PC1 0 1 0 选中PC2 0 1 1 选中PC3 1 0 0 选中PC4 1 0 1 选中PC5 1 1 0 选中PC6 1 1 1 选中PC7 D0:D0=0 选中的C口引脚输出0,D0=1 选中的C口引脚输出1。,例:PC6置1,其余位不变 解:控制字为: 00001101 即0DH 写入口C按位置/复位程序为: MOV A, # 0DH MOV DPTR,#0023H MOVX DPTR,A,8255初始化,8255是可编程的接口芯片,在使用8255之前,硬件上必须复位,即给RESET端送一个高电平;软件上必须初始化,即向8255写入方式控制字,以确定8255的工作方式。 例如:用8255作接口芯片,控制24个发光二极管。在编写驱动程序时,程序的前面一段8255的初始化程序。根据题意初始化程序如下: MOV DPTR,#2003H MOV A,#80H MOVX DPTR,A 例 设8255的地址为80FCH-80FFH,如果 8255的PA0-PA7接1个数码管,PC3接一个 蜂鸣器,PC4接一个开关,试对8255初始化。 例 某系统要求使用8255A的A口方式0输入, B口方式0输出,C口高4位方式0输出,C口 低4位方式0输入。 练习:设8255的口地址为4000H-4003H, 口A、口B、口C均为输入方式,方式0, 试对8255初始化。,MOV DPTR,#80FF H MOV A,#88H MOVX DPTR,A,MOV DPTR,#80FF H MOV A,#88H MOVX DPTR,A,MOV DPTR,#80FF H MOV A,#88H MOVX DPTR,A,7.2.5 8255的应用,当单片机内部并行口不够用时,常常外扩8255芯片。下面举例说明8255与外设的连接以及驱动程序的编制。,流水灯,计数器,例 用8255作接口实现如下功能:24个发光二极管轮流点亮。,流水灯,ALE,RD,WR,PSEN,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,89C51,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,A0,A1,A2,A3,A4,A5,A6,A7,OE,LE,D0,D1,D2,D3,D4,D5,D6,D7,74LS373,AB,CB,AB0,AB15,AB12,AB1,AB0,D0D7,RD,WR,CS,A0,A1,RESET,AB15,8255,PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7,PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7,PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7,程 序,MOV DPTR,#0003H MOV A,#80H MOVX DPTR,A UP2: MOV R6,#3 UP1: MOV R7,#8 MOV A,#01H MOV DPTR,#0000H UP0: MOVX DPTR,A LCALL D2S RL A DJNZ R7,UP0 MOV A,#00H MOVX DPTR,A INC DPTR DJNZ R6,UP1 SJMP UP2,流水灯程序,口地址的计算: 口A : 0000H 口B: 0001H 口C : 0002H 控制字寄存器 :0003H 方式控制字: 10000000B,例 用8255作接口实现如下功能:开关K按下并抬起时,2个数码管的显示加1。,计数器,ALE,RD,WR,PSEN,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,89C51,P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7,A0,A1,A2,A3,A4,A5,A6,A7,OE,LE,D0,D1,D2,D3,D4,D5,D6,D7,74LS373,AB,CB,AB0,AB15,AB12,AB1,AB0,D0D7,RD,WR,CS,A0,A1,RESET,AB15,8255,PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7,PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7,PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7,程 序,b,c,d,e,f,g,a,b,c,d,e,f,g,a,+5V,K,MOV DPTR,#0003H MOV A,#81H MOVX DPTR,A MOV R3,#0 MOV R4,#0,计数器程序,口地址的计算: 口A : 0000H 口B: 0001H 口C : 0002H 控制字寄存器 :0003H 方式控制字: 10000001B,UP2:MOV DPTR,#0000H MOV A,R3 MOVX DPTR,A MOV DPTR,#0001H MOV A,R4 MOVX DPTR,A MOV DPTR,#0002H UP0: MOVX A, DPTR JNZ UP0 UP1: MOVX A, DPTR JZ UP INC R3 CJNE R3,#10,UP2 MOV R3,#0 INC R4 CJNE R4,#10,UP2 MOV R4,#0 SJMP UP2,

    注意事项

    本文(第七章MCS-51并行口的扩展.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开