常用外围设备接口技术概述_第1页
常用外围设备接口技术概述_第2页
常用外围设备接口技术概述_第3页
常用外围设备接口技术概述_第4页
常用外围设备接口技术概述_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

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

文档简介

常用外围设备接口技术概述第七章常用外围设备接口技术11/12/20232本章学习目标1、掌握简单的并行接口芯片的外特性与应用2、掌握8255A的结构、工作原理和硬件连接3、掌握8255A的初始化方法4、掌握简单并行接口的应用11/12/202337.1 概述11/12/202341、可编程接口芯片概述接口电路应具有如下电路单元:①输入/输出数据锁存器和缓冲器用于解决CPU与外设之间速度不匹配的矛盾,以及起隔离和缓冲的作用。②控制命令和状态寄存器用来存放CPU对外设的控制命令,以及外设的状态信息。③地址译码器用来选择接口电路中的不同端口。④读写控制逻辑⑤中断控制逻辑11/12/202352、片选概念A7~A0CE译码器接口芯片同内存储器的读/写操作相仿,必须要有一个地址信号选中接口芯片后,才能使该芯片进入电路工作状态,实现数据的输入/输出。CPU的地址线通过地址译码器输出接到接口芯片的选通端CE,又称片选端。片选端是控制接口芯片进入电路工作状态的引脚端。只有CE被选中后,CPU才能通过该芯片与对应的I/O设备传送数据。11/12/202363、读/写概念读操作时,输入接口信息由数据总线进入CPU,数据何时读入CPU,由RD控制。写操作时,数据何时由数据总线进入输出接口芯片由WR控制。DBRDCE输入口DBWRCE输出口11/12/202374、可编程接口的概念多通道是指一个接口芯片一面与CPU连接,另一面可接几个外设。多功能是指一个接口芯片能实现多种接口功能,实现不同的电路工作状态。可编程是指通过计算机的指令来选择不同的通道和不同的电路功能。可编程芯片是指接口电路的组态可由计算机指令来控制的接口芯片。接口芯片中用来存放控制电路组态的控制字节的寄存器称为控制寄存器。11/12/202385、联络的概念数据线接口外设STBRDY11/12/202397.2 简单的输入输出接口11/12/202310简单的I/O接口的扩展通常用74LS244(8位三态缓冲器及总线驱动器)扩展输入口,用74LS273(8D锁存器)扩展输出口。11/12/20231111/12/202312若要求当某键按下时,相应的LED发光,则接口程序如下:LOOP:MOVDPTR,#PORT1MOVXA,@DPTRMOVDPTR,#PORT2MOVX@DPTR,AJMPLOOP11/12/202313在扩展接口时,还应注意两点:⑴I/O地址的安排,如果扩展的接口不多,则可用线选寻址,在图中P2.0来选择一个输入口和一个输出口。线选法未能使地址空间得到充分利用,对于RAM和I/O口容量较大的系统,可用74LS138作为地址译码器,译码出的信号作为片选信号。11/12/202314⑵总线负载能力的扩大:P0口作地址/数据总线时,其负载能力为8个LSTTL电路,P2口作为地址总线时,其负载能力为4个LSTTL电路,如果超过必须增加总线驱动器,如:74LS244(单向)、74LS245(双向)等。11/12/2023157.3 可编程并行接口芯片8255A11/12/2023161、概述INTEL8255A是一种通用的可编程序并行I/O接口芯片,又称“可编程外设接口芯片”。具有多种功能的可编程并行接口电路芯片最基本的接口电路:三态缓冲器和锁存器与CPU间、与外设间的接口电路:状态寄存器和控制寄存器还有端口的译码和控制电路、中断控制电路共24个外设引脚,分3个端口、2组控制共三种输入输出工作方式11/12/2023172、8255A的结构和功能1.8255A的内部结构①数据总线一个三态8位双向缓冲器,用作8255A同系统数据总线相连时的缓冲部件,CPU通过执行输入/输出指令来实现对缓冲器发送或接收数据。8255A的控制字和状态字也是通过该缓冲器传送的。②三个8位数据端口PA、PB、PC端口A:一个8位数据输出锁存/缓冲器;一个8位数据输入锁存器。端口B:一个8位数据输入/输出、锁存/缓冲器;一个8位数据输入缓冲器。端口C:一个8位数据输出锁存/缓冲器;一个8位数据输入缓冲器(输入没有锁存)。11/12/202318端口A:PA0~PA7A组,支持工作方式0、1、2端口B:PB0~PB7B组,支持工作方式0、1端口C:PC0~PC7仅支持工作方式0A组控制高4位PC4~PC7B组控制低4位PC0~PC3端口A:PA0~PA7常作数据端口,功能最强大端口B:PB0~PB7常作数据端口端口C:PC0~PC7可作数据、状态和控制端口分两个4位,每位可独立操作控制最灵活,最难掌握端口作用与特点11/12/202319③A组和B组控制电路由A、B两组控制电路组成。主要作用是根据CPU发出的方式选择控制字控制8255A的工作方式,每个控制组都接收来自读/写控制逻辑的“命令”,接收来自内部数据总线的“控制字”,并向与其相连的端口发出适当的控制信号;也可根据控制字的要求对C口按位进行置位或复位。A组控制部件用来控制PA口和C口的高4位,B组控制部件用来控制PB口和PC口的低4位。④读/写控制逻辑用来管理数据信息、控制字和状态字的传送,它接收来自CPU地址总线的A1、A0和控制总线的有关信号(RD、WR、RESET等),向8255A的A、B两组控制部件发送命令。11/12/202320数据总线缓冲器内部控制线内部数据线D0~D7A组控制A组端口AA组端口C高4位B组控制B组端口BB组端口C低4位读写控制逻辑PC0~PC3PB0~PB7PC4~PC7PA0~PA7RDWRA0A1CSRESET8255A的结构框图11/12/2023212.8255A的引脚功能11/12/2023223、8255A的工作方式与初始化1.工作方式①方式0-基本输入∕输出方式0下,每一个口都作为基本的输入输出口,C口的高4位和低4位以及A口、B口都可以独立地设置为输入口或输出口。基本输入∕输出下工作时,CPU可以采用无条件读写方式与8255A交换数据,也可采用查询方式。基本输入∕输出下工作时,输出的数据被锁存,而输入数据是不锁存的。②方式1-选通输入∕输出方式1下将三个端口分成A、B两组,A、B两个口作为数据口,C口分成两部分,分别作为A口和B口的联络信号。11/12/202323⑴方式1的输入数据选通信号表示外设已经准备好数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据PC4PC5PC3PA7~PA0INTEAIBFAINTRASTBA中断允许触发器方式1需借用端口C用做联络信号同时还具有中断请求和屏蔽功能11/12/202324PC2PC1PC0PB7~PB0INTEBIBFBINTRBSTBB数据选通信号表示外设已经准备好数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据中断允许触发器11/12/202325STB——选通信号,低电平有效由外设提供的输入信号,当其有效时,将输入设备送来的数据锁存至8255A的输入锁存器IBF——输入缓冲器满信号,高电平有效8255A输出的联络信号。当其有效时,表示数据已锁存在输入锁存器INTR——中断请求信号,高电平有效8255A输出的信号,可用于向CPU提出中断请求,要求CPU读取外设数据A口所用的三个联络信号占用C口的PC3、PC4、PC5三引脚,B口则用了PC0、PC1和PC2三个引脚。11/12/202326方式1输入时序dataINTRIBF

data输入端口D0~D7STBRDSTB和IBF是外设和8255A间的一对应答联络信号,为的是可靠地输入数据11/12/2023278255A的中断由中断允许触发器INTE控制置位允许中断,复位禁止中断对INTE的操作通过写入端口C的对应位实现,INTE触发器对应端口C的位是作应答联络信号的输入信号的哪一位,只要对那一位置位/复位就可以控制INTE触发器选通输入方式下端口A的INTEA对应PC4端口B的INTEB对应PC211/12/202328⑵方式1的输出外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据PC6PC7PC3PA7~PA0INTEAOBFAINTRAACKA中断允许触发器11/12/202329PC2PC1PC0PB7~PB0INTEBOBFBINTRBACKB外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据中断允许触发器11/12/202330方式1输出联络信号OBF——输出缓冲器满信号,低有效8255A输出给外设的一个控制信号,当其有效时,表示CPU已把数据输出给指定的端口,外设可以取走ACK——响应信号,低有效外设的响应信号,指示8255A的端口数据已由外设接受INTR——中断请求信号,高有效当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续提供数据端口A的INTEA对应PC6端口B的INTEB对应PC211/12/202331方式1输出时序输出端口OBF*和ACK*是外设和8255A间的一对应答联络信号,为的是可靠地输出数据

INTR

datadataD0~D7WROBFACK

11/12/202332③方式2(双向选通输入/输出)方式2将方式1的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据只有端口A可以工作于方式2,需要利用端口C的5个信号线,其作用与方式1相同方式2的数据输入过程与方式1的输入方式一样方式2的数据输出过程与方式1的输出方式有一点不同:数据输出时8255A不是在OBF有效时向外设输出数据,而是在外设提供响应信号ACK时才送出数据此方式也是借用C口的5条信号线作控制和状态线,A口的输入和输出均带有锁存。

11/12/202333PC6PC7PC3PA7~PA0INTE1OBFAINTRAACKAPC4PC5IBFASTBAINTE2用PC6设置INTE1(输出)用PC4设置INTE2(输入)输入和输出中断通过或门输出INTRA信号方式2双向引脚11/12/202334方式2双向时序data-out

INTR

data-outdata-indata-inPA0~PA7D0~D7IBF

WROBFACKSTBRD11/12/2023352.初始化①写入方式控制字:控制字格式11/12/202336写入方式控制字:示例要求:A端口:方式1输入C端口上半部:输出,C口下半部:输入B端口:方式0输出方式控制字:10110001B或0B1H初始化的程序段: movdx,0fffeh ;假设控制端口为0FFFEHmoval,0b1h ;方式控制字outdx,al ;送到控制端口11/12/202337说明:初始化编程后:当数据端口作为输入接口时,执行输入IN指令将从输入设备得到外设数据当数据端口作为输出接口时,执行输出OUT指令将把CPU的数据送给输出设备8255A具有锁存输出数据的能力对输出方式的端口同样可以输入不是读取外设数据读取的是上次CPU给外设的数据11/12/202338②C口按位置、复位控制字位控制字写入控制端口特别便于置位复位内部中断允许触发器INTE11/12/202339写端口C方法对端口C的数据输出有两种办法通过端口C的I/O地址:向C端口直接写入字节数据。这一数据被写进C端口的输出锁存器,并从输出引脚输出,但对设置为输入的引脚无效。通过控制端口:向C端口写入位控字,使C端口的某个引脚输出1或0,或置位复位内部的中断允许触发器。11/12/202340读端口C方法读取的C端口数据有两种情况未被A和B端口征用的引脚:将从定义为输入的端口读到引脚输入信息;将从定义为输出的端口读到输出锁存器中的信息。被A和B端口征用作为联络线的引脚:将读到反映8255A状态的状态字11/12/2023414、应用举例BUSY

DATA0~78255APC6PC2PA0~PA7打印机STROBE查询式打印机接口11/12/202342BUSYDATA0~7ACKSTROBE主机把数据送给引脚DATA0~DATA7同时送出数据选通信号STB打印机在BUSY信号线上发出忙信号打印机处理好输入的数据时撤消忙信号同时又送出一个响应信号ACK11/12/2023437.4 用串行口扩展并行I/O口11/12/202344前提:MCS-51单片机的串行口在方式0时是一个同步移位寄存器I/O方式,可用来扩展8位并行输入/输出口。11/12/202345⑴用串行接口扩展并行输入口用一片8位并行输入/串行输出移位寄存器,如4014或74LS165便可以扩展一个并行输入口。11/12/202346⑵用串行口扩展并行输出口用一片串行输入/8位并行输出移位寄存器,如4094或74LS164便可以扩展一个并行输出口。11/12/2023477.5 键盘及其接口11/12/202348在设计键盘接口时,解决以下几个问题:

开关状态的可靠输入——可设计硬件去抖动电路或设计去抖动软件。

键盘状态的监测方法——中断方式还是查询方式。

键盘编码方法。

键盘控制程序的编制。11/12/202349一、独立式键盘接口 1.独立式按键结构独立式按键是指直接用I/O口线构成的单个按键电路。每根I/O口线上按键的工作状态不会影响其他I/O口线的工作状态。独立式按键电路如图所示。2.独立式按键的软件结构包括按键查询、键功能程序转移。FP0~FP7为功能程序入口地址标号,PROM0~PROM7分别为每个按键的功能程序。11/12/202350独立式按键电路11/12/202351使用8255扩展I/O的独立式键盘11/12/202352二、行列式键盘 1.键盘工作原理行列式键盘电路原理如图所示。按键设置在行列式交点上,行列线分别连接到按键开关的两端。当行线通过上拉电阻接+5伏时,被钳位在高电平状态。键盘中有无按键按下是由列线送入全扫描字、行线读入行线状态来判断的。键盘中哪一个键按下可由列线逐列置低电平后,检查行输入状态来判断。11/12/202353行列式键盘原理电路11/12/2023542.键盘工作方式键盘的工作方式:编程扫描方式、定时扫描方式、中断扫描方式三种。在键盘扫描子程序中完成下述几个功能。(1)判断键盘上有无键按下(2)去键的机械抖动影响。(3)求按下键的键号。(4)键闭合一次仅进行一次键功能操作。11/12/2023558155扩展I/O口组成的行列式键盘11/12/202356键扫描子程序框图11/12/202357定时扫描方式程序框图11/12/202358中断方式键盘接口11/12/2023593.键盘扫描方式扫描法:在判定有键按下后逐列(或逐行)置低电平,同时读入行(或列)的状态,如果行(或列)的状态出现非全1状态,这时0状态的行、列交点的键就是所按下的键。特点是逐列(或逐行)扫描查询。这时相应行(或列)应有上拉电阻接高电平。反转法:只要经过两个步骤就可获得键值。反转法原理如图所示。11/12/202360

(a)线反转法第一步(b)线反转法第二步线反转法原理11/12/2023614.行列式键盘接口通用并行扩展I/O口键盘接口8031串行I/O口扩展的键盘接口11/12/2023628031串行I/O口扩展的行列式键盘接口11/12/2023637.6 显示器接口11/12/202364一、LED显示器接口 1.LED显示器结构与原理LED显示块是由发光二极管显示字段的显示器件。在微机应用系统中通常使用的是七段LED。这种显示块有共阴极与共阳极两种,如图所示。七段显示块与微机接口非常容易。11/12/202365

(a)共阴极(b)共阳极

温馨提示

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

评论

0/150

提交评论