第7章并行接口8255_第1页
第7章并行接口8255_第2页
第7章并行接口8255_第3页
第7章并行接口8255_第4页
第7章并行接口8255_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

微机接口技术课程要求:学习各种类型接口芯片的:基本工作原理基本程序设计芯片与CPU连接电路设计:将各种芯片按要求的地址空间分配,设计电路原理图第七章并行接口第七章并行接口1、I/O接口的概念和基本原理2、简单I/O接口3、并行接口电路8255A31、I/O接口接口的定义及功能输入输出设备(I/O,又称外设)是计算机系统的基本组成部分,是实现计算机与外界交换信息的设备。常见的外设有键盘,显示器,打印机,鼠标,开关量输入输出通道和A/D,D/A转换器等等。接口的定义及功能1、I/O接口I/O接口是建立在CPU与外设之间,使两者动作协调的一组逻辑控制电路的总称。即在CPU与外设之间建立一个缓冲区,解决CPU与外设之间存在的数据形式、数据的传递方式、以及传递速率上存在的差异。I/O接口的功能:对数据传输的控制。1、I/O接口输入输出接口的两个基本问题中央处理器如何识别各个设备;中央处理器如何控制设备的工作、响应设备的请求和进行数据交换。1、I/O接口接口的基本功能I/O地址译码与设备选择。所有外设都通过I/O接口挂接在系统总线上,在同一时刻,总线只允许一个外设与CPU进行数据传输。因此,只有通过地址译码选中的I/O接口允许与总线相通,而未被选中的I/O接口呈现为高阻状态,与总线隔离。信息的输入输出。通过I/O接口,CPU可以从外部设备输入各种信息,也可将处理结果输出到外设;CPU可以控制I/O接口的工作(向I/O接口写入命令),还可以随时监测与管理I/O接口和外设的工作状态;必要时,I/O口还可以通过接口向CPU发出中断请求。1、I/O接口接口的基本功能命令、数据和状态的缓冲与锁存。因为CPU与外设之间的时序和速度差异很大,为了能够确保计算机和外设之间可靠地进行信息传送,要求接口电路应具有信息缓冲能力。接口不仅应缓存CPU送给外设的信息,也要缓存外设送给CPU的信息,以实现CPU与外设之间信息交换的同步。信息转换。I/O接口还要实现信息格式变换、电平转换、码制转换、传送管理以及联络控制等功能。1、I/O接口接口的基本功能

输入/输出(Input/Output)接口的作用:

接口是完成计算机与外界的数据交换,主机和外部设备两者之间的同步与协调,速度的匹配和数据格式转换的逻辑部件。它是计算机系统的重要组成部分。1、I/O接口接口的基本结构接口电路一般由数据变换、数据缓冲(锁存),以及控制和反映状态的电路组成。1、I/O接口接口的基本结构数据口:数据传送。(与系统数据总线连接)。地址总线+片选信号:片选信号的惟一性。控制口:用来完成对接口电路的操作。状态口:保存外设的工作状态。由一组寄存器构成。有的接口电路本身就带有微处理器,称为智能型接口。1、I/O接口CPU与外设之间的连接8088I/O装置I/O端口1I/O端口2I/O端口3数据状态控制8数据端口地址WRRDIORQ8数据来自外设1、I/O接口关于端口

在一个外设接口电路中用数据寄存器存放数据,用状态寄存器来存放状态信息,用控制命令寄存器存放控制信息。这些寄存器称为I/O端口,每一个端口有一个端口地址,CPU寻址必须对端口进行而不能笼统的对某个外设。另外,端口寄存器往往是8位的,通常一个外设的数据端口也是8位的,而状态与控制端口往往只用其中的一位或两位,故不同的外设的状态和控制信息可以共用一个端口。1、I/O接口关于端口注意区分I/O接口与端口I/O接口:将外设连接到总线上的一组逻辑电路的总称实现外设与主机之间的信息交换I/O端口:接口中的寄存器1、I/O接口接口的类型(1)接口芯片按通用性可以分为两类:专用接口和通用接口显示控制器,键盘控制器等属于专用接口;而通用接口可以供几类外设使用。1、I/O接口接口的类型(2)接口芯片按与外设数据的传送方式可以分为并行接口和串行接口

并行接口是指主机与外设之间信息的传送按字节或字进行;

串行接口是指主机与外设备之间信息的传送是按通讯规则一位一位进行1、I/O接口并行接口若干根传送数据的导线,组成数据总线。根据同时可传送的数据位数,有不同的总线宽度。8、16、32……为控制数据传送过程,还需要表示数据状态的信息,和控制数据传送(方向)等控制信息。读、写和使能等信号——控制总线。ALE、IO/M、RD、WR、DT/R、DEN、(CS)(INTR、INTA)1、I/O接口并行接口对处理器而言,数据传送仍然为输入输出操作过程。8086/8088的传送指令MOV和输入输出指令IN、OUT。RD、WR、(M/IO)可有三种工作方式:查询、中断和DMA。查询方式:处理器询问外设。简单,效率不高,占用处理器较多的时间,或对外设服务不及时。用于对发光二极管、开关、继电器、电动机等简单设备操作和状态测试。1、I/O接口并行接口中断方式:中断方式是外设主动向处理器申请服务。处理器工作效率高,并且能使外设及时得到服务。(第六章的中断系统)。DMA方式:在存储器与外设之间开辟一条高速数据通道,在传送过程中不需要处理器参与。大量数据传输时效率高。(第8章)。2、简单I/O接口简单I/O输出接口采用(缓冲)锁存器作为输出接口。锁存器74LS373(74LS374,74LS273):封装相同,功能相似,引脚定义基本相同。与8282的逻辑功能类似。功能上的差别:

373:电平触发,三态输出

374:边沿触发,三态输出

273:边沿触发,带总清。非三态输出2、简单I/O接口简单I/O输出接口—74ls3732、简单I/O接口简单I/O输出接口--82822、简单I/O接口简单I/O输入接口缓冲器作为输入接口:必须具有三态输出功能。74LS244,74 LS245等。与8286芯片逻辑类似。锁存器作为输入接口:带寄存器。(74LS373,74LS374)信号经“缓冲”后,增强驱动能力(可驱动8个TTL芯片)。74LS244,74LS245。2、简单I/O接口简单I/O输入接口--74ls24474LS244分为两组,每组4位。单向缓冲器、三态输出。控制信号:G2、简单I/O接口简单I/O双向接口--74ls24574LS2458位双向缓冲器、三态输出。控制信号:DIR、G2、简单I/O接口简单I/O双向接口--82862、简单I/O接口简单接口电路采用74LS245和74LS373作为输入输出接口。注意:再简单的接口也有地址问题,CS为片选信号,确定地址。图中,一为输出、一为输入,因此CS可以不同,也可以相同(用同一地址)。每一个373可接8个发光二极管,每一个245(244)可接8个开关。2、简单I/O接口输入输出接口扩展CPU引脚数有限,(直接带负载能力有限)。扩大系统的适应能力只要适合应用目的的芯片都可以用。(注意逻辑与电平的匹配问题。)可编程芯片,功能比普通TTL、CMOS等芯片功能强,有多种工作方式。根据应用目的专门设计。适合特定的工作领域。通用可编程芯片:PAL、GAL、CPLD、FPGA。2、简单I/O接口简单接口实验LAB6000带的硬件实验3、4。要求大约每一秒钟采样开关状态一次,并显示开关状态。(根据开关状态,改变显示方式:循环左移、循环右移、8位同时闪烁、间隔闪烁……)3、并行接口电路并行接口电路8255A一种通用、可编程、接口电路芯片,(3个8位并行数据接口)。扩展了CPU端口。40个引脚,双列直插式封装;单5V电源,TTL电平;3种工作方式,可构成各种类型的接口电路。8255A内部有与外设接口和与处理器接口两部分组成。3、并行接口电路8255A的内部结构和外部引脚

3、并行接口电路8255A与处理器的接口双向数据总线D7~D0

读信号、写信号:、;地址信号A1、A0;片选信号。复位信号RESET:高电平时复位8255A,使所有内部寄存器(包括控制寄存器)均被清除,所有数据端口(端口A、B和C)均被置成输入方式。3、并行接口电路8255A的扩展端口共有3个八位的并行端口(A、B、C)。对应的引脚分别是PA7~PA0、PB7~PB0,和PC7~PC0。C口还可分为2个四位端口。都可以通过编程设定为输入或输出端口。三个端口分成A、B两组,共有三种工作方式。A组,端口A和端口C的上(高)半部分(PC7~PC4)组成;B组,端口B和端口C的下(低)半部分(PC3~PC0)组成。3、并行接口电路8255A的端口操作PCXT计算机中8255A地址为60H~7FH,共32个地址,实际用60H~63H四个地址。3、并行接口电路8255A的初始化操作8255A工作方式只需一条指令,即可设置完成。D7=1表示设置8255A工作方式,D6、D5为A组工作方式选择,有三种方式。D4为端口A的方向设定,D3为端口C上半部分方向设定。其中D4、D3设定还要根据A组的工作方式确定。D2、D1、D0为B组工作方式选择,只有方式0和方式1。3、并行接口电路8255A的控制字格式3、并行接口电路8255A的工作方式—方式0基本输入输出方式,无应答式的联络信号。A、B、C三个端口都可以工作在方式0。方式0对输出数据锁存,输入数据不锁存。

3、并行接口电路8255A的工作方式—方式0端口C可以分成上、下两个4位端口,分别设置。因此8255A可看成有四个端口。两个8位端口,两个四位端口。同一端口的各位方向相同。从四个端口全设为输出,到全设为输入,共有16种组合方式。(D4、D3、D1、D0)方式0功能最简单,并且在端口侧没有控制信号和状态信号。功能相当于373(输出),或244(输入)。3、并行接口电路8255A的工作方式—方式03、并行接口电路8255A的工作方式—方式1选通输入输出方式:可设置方向的单向端口,端口带控制逻辑。设置为工作方式1,端口A和端口B作为数据端口,并且每个数据端口分别利用端口C指定的3个引脚作为应答联络信号。工作方式1,输入、输出的数据都锁存。并且,端口具有中断请求逻辑和中断允许触发器。C端口的未被方式1征用的引脚仍可以工作在方式0。

3、并行接口电路8255A的工作方式—方式1选通输入方式3、并行接口电路8255A的工作方式—方式1选通输入方式端口C的3个引脚成为应答联络(控制)信号线,在输入方式下它们的功能为:STB:选通信号,输入,低电平有效。由输入设备来,将数据锁存至8255A内部输入锁存器控制信号。

IBF:输入锁存器满信号,输出,高电平有效。向输入设备报告输入锁存器状态。STB为低电平时置高,CPU来的RD读数据信号的上升沿(后沿)使其变低。INTR:中断请求信号,高电平有效。8255A的输出信号,可用于向CPU提出中断请求。(接8259的IR脚)。注意:要使INTR有效必须置为INTE(对应的C口引脚的内部寄存器)3、并行接口电路8255A的工作方式—方式1选通输出方式3、并行接口电路8255A的工作方式—方式1选通输出方式OBF:输出缓冲(锁存)器满信号,输出,低有效。表示CPU已将数据输出到指定的端口。它由CPU的WR信号上升沿(后沿)置有效,由外设来的ACK信号(取数据)恢复为高。ACK:外设响应信号,低有效。读端口数据。并清OBF。(注意不清输出锁存器)INTR:中断请求信号,输出,高有效。当外设接收数据后,8255A输出此信号向CPU提出中断请求。WR的下降沿使其复位。3、并行接口电路8255A的工作方式—方式1输入输出混合方式3、并行接口电路8255A的工作方式—方式2方式0和1,工作时均只能是单向。方式2是将方式1的选通输入输出功能组合成一个双向数据端口。8255A只有端口A可以工作于方式2,同时还要用到端口C的5根信号线。此时,端口B还可工作于方式1(配合端口C的剩余3个引脚),也可工作于方式0(端口C的剩余3个引脚也工作于方式0)。方式2时,输入和输出数据均进行锁存。并且输出锁存器满时,数据不出现在端口数据线上,只有ACK信号有效时,数据才出现在端口上。

3、并行接口电路8255A的工作方式—方式23、并行接口电路8255A的工作方式—方式2CPU对8255A的数据读写用RD和WR,外设对8255A数据的读写分别用ACK和STB。输入输出数据采用不同的缓冲寄存器,外设和CPU的读写顺序可任意。输出的中断允许触发器INTE1由PC6置位/复位控制。输入的中断允许触发器INTE2由PC4置位/复位控制。只有一个向CPU的中断请求线。(8086/8088如何响应中断?)

3、并行接口电路8255A的工作方式—方式2A口工作在方式2时,CPU向8255A写时,数据写入8255A输出缓冲锁存器,不出现在端口线上,而是使OBF有效,等外设响应信号ACK有效时,数据才出现在端口。同样,外设数据送到PA口后,由STB信号送入8255输入缓冲锁存器。也不出现在系统数据总线。只有当CPU的RD有效时,才出现。数据在系统总线和PA口出现的顺序可以不相同,它们分别有各自的控制信号和状态信号。在双向通信时8255A成为双向带锁存的数据缓冲器。3、并行接口电路8255A的编程初始化编程较简单,3个端口设置只需一个方式控制字。

3、并行接口电路8255A的编程—写入方式控制字8259只有一个控制字,方式控制字。写入地址(即A1A0=11)。控制字格式如上图。方式控制字的最高位D7为标志位,D7=1表明写方式控制字。D7=0,为对端口C的位操作(置1,或清0)

3、并行接口电路8255A的编程—读写数据端口IBMPC机用输入IN指令和输出OUT指令读写各端口。8255A各端口都具有输出锁存数据的能力。对设为输出方式的端口,同样可以执行读操作,但是读取的数据,不是外设的数据,而是上次CPU输出到外设的数据。3、并行接口电路8255A的编程—端口C的操作当端口A和B工作在方式0时,端口C被分成两个4位端口组,可按组分别置为输入或输出。当端口A和B工作在方式1或方式2(A口)时,C口的某些引脚作为控制信号。此时,未用的C口引脚仍可工作在方式0。对端口C的数据输出有两种办法:1.通过端口C的I/O地址,向端口C直接写入字节数据,数据被写进C端口的输出锁存器,并从输出引脚输出。对设置为输入的引脚,写出的数据无效。2.通过控制字端口,向端口C写入位控制字,使端口C的某个引脚输出l或0,或置位、复位状态/控制字。3、并行接口电路8255A的编程—端口C的操作最高位为0,端口C的位操作。对工作于方式1、2的引脚,置位/复位端口锁存器。A1A0=11通过控制字端口写C端口3、并行接口电路8255A的编程—端口C的操作读写C端口数据对未被端口A和B征用的引脚,从定义为输入的端口读到的是引脚上的输入信息;从定义为输出的端口读到的是上次输出到锁存器的信息。对被A和B端口征用的作为控制线的引脚,读到的是反映8255A状态的状态字,如下图。

3、并行接口电路8255A的编程—端口C的操作注意,图中仅说明在各种方式下读取的内容,并不是实际的组合。例如,可将A组设为输出,B组设为输入。此时组合也应调整。3、并行接口电路8255A的应用----

IBMPC/XT中的应用

IBMPC/XT使用一片8255A管理键盘、控制扬声器和系统配置开关DIP的状态等。这片8255A的I/O地址范围为60H~7FH。实际用60H~63H。端口A、B和C的地址分别为60H、6lH和62H,63H为控制字寄存器地址。3、并行接口电路8255A的应用----

IBMPC/XT中的应用在XT机中,8255A工作在基本输入输出方式。端口A为方式0输入,用来读取键盘扫描码。PC微机中则采用独立的键盘,通过5芯电缆与主机连接。端口B工作于方式0输出,PB7和PB6进行键盘管理,PB1和PB0控制扬声器发声。端口C为方式0输入,高4位为状态测试位,低4位用来读取系统板的系统配置DIP开关的状态。3、并行接口电路8255A的应用----

专用键盘接口3、并行接口电路8255A的应用----

LED数码管接口3、并行接口电路8255A的应用----

LED数码管接口3、并行接口电路8255A的应用----

打印机接口打印机一般采用并行接口Contronics标准。Contronics接口是工业界的一个并行接口协议。该协议规定了36脚簧式插头座为打印机标准插座,并规定了36脚的信号

温馨提示

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

评论

0/150

提交评论