[信息与通信]可编程接口芯片.ppt
《[信息与通信]可编程接口芯片.ppt》由会员分享,可在线阅读,更多相关《[信息与通信]可编程接口芯片.ppt(89页珍藏版)》请在三一文库上搜索。
1、微型计算机原理与应用,第7章 可编程接口芯片,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 2,【知识点】,可编程接口概述 可编程并行接口芯片8255A 可编程定时/计数器8253,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 3,概述,可编程芯片:用户通过程序改变其功能的电路芯片 芯片初始化(芯片编程):程序改变芯片工作方式的过程 目前常用的可编程芯片: 8255A并行I/O接口 8253计数/定时器 8251串行I/O接口 8259中断控制器,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 4,简单可编程电路方案,当寄存器FF为1时,多路转换开关接位置1,
2、I/O线接三态门,这个电路作为输出接口 当寄存器FF为0时,多路转换开关接位置0,I/O线接锁存器,这个电路作为输出接口,三态门,锁存器,用户对寄存器FF写入的内容称为命令字或方式控制字,寄存器FF称为命令寄存器,相应的端口称为命令端口或控制端口,初始化的过程实际上是对芯片的控制端口写入各种命令字的操作,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 5,按功能可把8255A分为三个逻辑电路部分,即:口电路、数据总线缓冲器和读/写控制电路。 (1)口电路 8255A共有三个8位口,其中A口和B口是单纯的数据口,供数据I/O使用。而C口则既可以作数据口,又可以作控制口使用,用于实现A口
3、和B口的控制功能。 数据传送中A口所需的控制信号由C口高位部分(PC7PC4)提供,因此把A口和C口高位部分(PC7PC4)合在一起称之为A组;同样理由把B口和C口低位部分(PC3PC0)合在一起称之为B组。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 6,(2)数据总线缓冲器 数据总线缓冲器为8位双向三态缓冲器,可直接和CPU的数据线相连,与I/O操作有关的数据、控制字和状态信息都是通过该缓冲器进行传送。 (3)读/写控制电路 与读写有关的控制信号有: CS片选信号(由CPU地址线通过译码产生) RD读信号 WR写信号,微型计算机原理与应用第7章 输入输出方法及常用的接口电路
4、7,A1、A0 端口选择控制信号,提供四个端口地址(A、B、C三个端口地址及一个控制端口地址), RESET复位信号(高电平有效)。 复位之后,控制寄存器清除,各端口被置为输入方式。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 8,A组 控制,B组 控制,端口C 上半部,端口C 下半部,端口B,O,O,O,数据总线 缓冲器,读 / 写 控制逻辑,端口A,数据总线,RD WR A0 A1,RESET,CS,PA0 PA7,PC4 PC7,PC0 PC3,PB0 PB7,CPU接口,外设接口,内部逻辑,8255A内部结构,内部数据总线,D0 D7,微型计算机原理与应用第7章 输入输出
5、方法及常用的接口电路 9,标准40管脚双列直插式芯片 1、与外设连接的管脚 我们已经知道8255A有三个数据端口,每个端口是8位的,由此可推算与外设相连接的管脚共有24位。其中A口有PA7PA0八个I/O引脚,B口有PB7PB0八个I/O引脚,C口有PC7PC0八个I/O引脚。特别地对于PC7PC0,其中可有若干根复用线可用于“联络”信号或状态信号,其具体定义与端口的工作方式有关。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 10,2、与CPU连接的管脚 包括数据线D7D0,读写控制线和复位线,以及和CPU地址线相连接的片选信号、端口地址控制线A0和A1。 3、电源线和地线 82
6、55A的电源引脚为VCC和GND。VCC为电源线,一般取5V 。GND为电源地线。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 11,1、8255A的工作方式 8255A共有三种工作方式,即方式0、方式1、方式2。 (a)方式0:基本输入/输出方式 方式0下,可供使用的是两个8位口(A口和B口)及两个4位口(C口高4位部分和低4位部分)。四个口可以是输入和输出的任何组合。 方式0适用于无条件数据传送,也可以把C口的某一位作为状态位,实现查询方式的数据传送。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 12,(b)方式1:选通输入/输出方式 A口和B口分别用于数据的输
7、入/输出。而C口则作为数据传送的联络信号。因为A口和B口的联络信号都是三个,如果A或B只有一个口按方式1使用,则剩下的另外13位口线仍然可按方式0使用。如果两个口都按方式1使用,则还剩下2位口线,这2位口线仍然可以进行位状态的输入输出。 方式1适用于异步查询方式的数据输入/输出。 (c)方式2:双向数据传送方式 只有A口才能选择这种工作方式,这时A口既能输入数据又能输出数据。在这种方式下需使用C口的5位线作控制线,方式2适用于查询或中断方式的双向数据传送。如果把A口置于方式2下,B口工作于方式1时,C口8根线将全部作为联络信号使用。,7.1.3 8255A的工作方式及编程,微型计算机原理与应用
8、第7章 输入输出方法及常用的接口电路 13,(1)8255的方式控制字,D0,D1,D2,D3,D4,D5,D6,D7,PC3 PC0 1:输入 0:输出,B口 1:输入 0:输出,B口工作方式 0:方式0 1:方式1,PC7 PC4 1:输入 0:输出,A口 1:输入 0:输出,A口工作方式 00:方式0 01:方式1 1:方式2,D7 = 1 特征位,B组,A组,2、8255A 编程,方式控制字未规定C口的工作方式,只规定了C口数据的传输方向,这就表明C口要么作为联络线用,要么就只工作在方式0,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 14,例1:对8255A各口作如下设置
9、:A口方式0,B口方式0,从A口输入,从B口、C口输出。(8255A的C口地址为62H) 工作方式控制字10010000,即90H。初始化程序段为: MOV AL,90H OUT 63H,AL ;控制口输出控制字 IN AL,60H ;从A口输入 OUT 61H,AL ;从B口输出 OUT 62H,AL ;从C口输出,2、8255A 编程,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 15,(2) C口的置位/复位控制字,D0,D1,D2,D3,D4,D5,D6,D7,1:置位 0:复位,C口选择,000:PC0 001:PC1 010:PC2 011:PC3 100:PC4 10
10、1:PC5 110:PC6 111:PC7,任选(可1可0),D7 = 0 (特征位),方式0:基本 I/O 方式 (查询时,任选C口做连络信号) 方式1:选通I/O 方式(可查询或中断,固定C口做连络信号) 方式2:双向I/O方式(只用于A口,PC3 PC7做连络信号),2、8255A 编程,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 16,例2:把C口的第六位PC5置为1。 MOV AL,00001011 ;PC5置位 OUT 63H,AL,IN AL,63H OR AL,00100000B(清零时用AND) OUT 63H,AL,2、8255A 编程,微型计算机原理与应用第
11、7章 输入输出方法及常用的接口电路 17,(3) 读入状态字,方式0:基本 I/O 方式 (查询时,任选C口做连络信号) 方式1:选通I/O 方式(可查询或中断,固定C口做连络信号) 方式2:双向I/O方式(只用于A口,PC3 PC7做连络信号),2、8255A 编程,当8255A由程序设定在方式1或方式2工作时,C口就根据不同的情况,产生或接收“联络”信号。如果这时我们对C口进行读操作,则读出的内容就包含两部分内容,一部分是那些作为I/O线上的内容,另一部分是与“联络”状态有关的内容。通过读取C口的内容,程序员可以测试或检查外部设备的状态,相应的改变 程序流程。,微型计算机原理与应用第7章
12、输入输出方法及常用的接口电路 18,例1:8255A的A口和B口工作在方式0,A口为输入端口,接有四个开关。B口为输出端,接有一个七段发光二极管,连接电路如图所示。试编一程序要求七段发光二班管显示开关所拨通的数字。,1、8255A工作 在方式0,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 19,A口地址:,A0=0,偶地址 8位的8255A与16位的CPU可以通过数据总线D7D0传送8位信息,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 20,段码表,LED数码管,由图可知,七段发光二极管为共阳极LED器件。要让a段点亮,要求从PB0输出高电平;要让b段熄灭,要求从P
13、B1输出低电平。 8255A的A口接有开关,4位开关的组合可为0FH。为此,可将在LED上显示0FH各字符的段码列表。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 21, tab1 db 3fh,06h,5bh,4fh,31h mov al,90h ;设置方式字,A输入,BC输出 mov dx,8026h ;控制口 out dx , al add1: mov dx,8020h ;A口 in al,dx ;取开关信息 and al,0fh ;屏蔽高4位 mov bx,offset tab1;取段码表首地址 xlat ;查表得段码 mov dx,8022h ;输出显示,B口 out
14、dx,al mov cx,0600h add2: loop add2 ;循环延时显示 jmp add1,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 22,A口方式 1 ,输入,INTEA,PA0 PA7,PC4,PC5,PC3,STBA,IBFA,INTRA,I / O,PC6 PC7,O,RD,2、8255A工作在方式1输入,A口的选通信号,当其有效时,外设把数据打入A口的输入缓冲器,A口的输入缓冲器“满”信号,当其有效时表示A口的输入缓冲器已暂存一个有效数据。,A口的中断请求信号。当其有效时,8255A的A口向CPU申请中断,要求CPU从A口取数,内部中断允许,设置PC4 =
15、 1 可使INTEA = 1,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 23,2、8255A工作在方式1输入,1)外设把数据送到A口的数据线PA0PA7,选通信号STBA有效,数据进入A口的输入缓冲器 2)A口的IBFA有效,通知外设或CPU,表示A口接收了一个有效数据 3) A口的INTRA有效,以中断方式通知CPU取走A口中的数据 4)CPU读A口,数据进入CPU 5)IBFA及INTRA转为无效,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 24,当A口已接受外设数据后,有两种方式通知CPU取数: 其一用条件查询方式,通过查询缓冲器是否“满”,即IBFA是否为
16、高电平来取数。 其二用中断方式。 在条件传送中,一般要有所谓的“握手”信号来协调数据的传送。“握手”信号至少要有两位信号线,其中一位是由接口电路发给外设,功能是向外设提供接口电路的信息。另一位是由外设发给接口,功能是向接口提供外设的信息。显然在8255A的选通输入方式中STBA和IBFA是一对“握手”信号。,外设所发,通知A口外设给它一个数据,8255A发出的,告诉外设A口已经接收这个数据,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 25,例2:8255A的A口和B口分别工作在方式1和方式0,A口为输入端口,接有8个开关。B口为输出端,接有8个发光二极管,连接电路如图所示。现要求
17、用方式1把改变后的键信息输入到CPU并通过B口显示。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 26,本例要求把改变后的开关值通过B口的发光二极管显示出来。这和上面的例题不同,无条件传输方式CPU每次 从A口输入的信息不一定是开关改变后的值。 本例成功传输数据依赖于2个条件: 1)CPU知道用户何时把数据送入8255A的A口 2)用户知道CPU何时把数据取走,这个系统的工作过程如下: 1、用户通过改变K0K7,产生新的键信息; 2、按下开关K,产生选通信号,数据进入A口的缓冲器,此步骤实际上告诉CPU,8255的A口来了一个新数据; 3、IBFA有效使LED点亮。这里含有两个信
18、息,一个是8255A通知CPU其A口来了一个新数据,另一个是告诉用户CPU尚未取走这个这个数据,用户不得再送其他数据; 4、CPU取走这个数据,LED熄灭; 5、转步骤1。,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 27,设8255的I/O地址分布为88H8EH,相应的程序段如下: mov al,10111001b ;设置A口为方式1的输入 ;B口为方式0输出,C口输入 out 8eh,al ;控制口 loop1: in al,8ch ;取C口的状态线 test al,00100000b ;测试IBFA信息 jz loop1 ;等待用户设定新的键值 mov cx,0ffffh
19、;延时,LED灯亮(步骤3) loop2:loop loop2 in al,88h ;A口取数。LED灯灭(步骤4) out 8ah,al ;更新B口的显示 jmp loop1 ;重复,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 28,INTEA,PA0 PA7,PC6,PC7,PC3,PC4 PC5,ACKA,OBFA,INTRA,I / O,O,WR,外设回答信号。由外设发出。当其有效时,表示外设已接收数据。,A口的输出缓冲器“满”信号,当其有效时表示A口的输出缓冲器已暂存一个有效数据。,A口的中断请求信号。当其有效时,8255A的A口向CPU申请中断,要求CPU送数给A口,
20、中断允许信号,设置PC6 = 1,可使INTEA = 1,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 29,3、8255A工作在方式1输出,1)CPU执行OUT指令,把数据写入A口的输出缓冲器 2)当有效数据进入A口的数据线PA0PA7时,OBFA有效,通知外设CPU已把一个有效数据输出给A口,外设可从A口取数据了 3) 外设取走数据时,发ACKA信号给8255A,告诉A 口外设正在取数据 4)A口OBFA无效,表示A口数据已被外设取走 5)INTRA有效,以中断方式通知CPU再输出数据给A口,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 30,当A口已接受外设数据后
21、,有两种方式通知CPU取数:其一用条件查询方式,通过查询缓冲器是否“满”,即IBFA是否为高电平来取数。其二用中断方式。 在这种方式下,OBFA和ACKA是一对“握手”信号。 OBFA是8255A产生,当其有效时,告诉外设A口已有一个新数据。 ACKA是外设产生,当其有效时,通知A口外设已把数据取走。,3、8255A工作在方式1输出,微型计算机原理与应用第7章 输入输出方法及常用的接口电路 31,例3:8255A的A口工作在方式1的输出,接有8个发光二极管,现要求把内存中的10个数,通过A口发送给发光二极管以二进制的形式供用户抄录。,3、8255A工作在方式1输出,微型计算机原理与应用第7章
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息与通信 信息 通信 可编程 接口 芯片
链接地址:https://www.31doc.com/p-2000779.html