微机原理 清华大学出版社 冯博琴 吴宁第7章 常用数字接口电路.ppt_第1页
微机原理 清华大学出版社 冯博琴 吴宁第7章 常用数字接口电路.ppt_第2页
微机原理 清华大学出版社 冯博琴 吴宁第7章 常用数字接口电路.ppt_第3页
微机原理 清华大学出版社 冯博琴 吴宁第7章 常用数字接口电路.ppt_第4页
微机原理 清华大学出版社 冯博琴 吴宁第7章 常用数字接口电路.ppt_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

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

文档简介

1、1,第7章 常用数字接口电路,2,主要内容:,了解并行通信与串行通信的特点 掌握两种可编程接口芯片的应用,3,接口电路概述,接口:在微计算机系统中,CPU与外部设备之间的联系,需要有特定的硬件连接和相应的软件控制。完成这一任务的软、硬件综合称为接口。 接口技术:对硬件、软件的设计,称为接口技术。 端口:指接口电路中那些完成信息传送,可由程序寻址进行读写的寄存器。,4,接口的功能,地址译码或设备选择 系统中可能有多个外部设备,当主机在不同时刻需要和不同的外设发生联系时,CPU要用地址码来选择不同的外设。 数据缓冲(输入)和锁存(输出) 数据总线是系统各部分之间公用的双向总线,所有设备分时复用,所

2、以无论是存储器还是外部设备都不能占用数据总线,只允许被选中的设备在读/写周期内用其传送数据。 信息格式与电平转换 有时需要接口能把CPU传输的并行数据转换成串行数据。 数据传送的协调 CPU的工作是有一定时序的,交换数据时必须采用一定传送方式控制。,5,接口的基本组成,CPU与外部设备交换的信息有三种:数据、状态、控制信号。 接口的基本组成有三部分: 寄存器:数据寄存器、状态寄存器、控制命令寄存器 控制逻辑电路:包括地址译码和设备选择电路(用于端口地址分配)、中断控制逻辑(用于中断屏蔽、中断优先级等)、读写控制电路(用于产生时序)等 连接线:主机与接口、接口与外设两个方向的信号联络线。,6,7

3、,7.1 并行通信与串行通信,8,并行通信,特点: 以数据字节或字为单位进行数据传送; 适合近距离传送 ; 对传送的信息不要求固定格式。 分类 输入和输出 数字和模拟 单向和双向 简单接口和可编程接口,9,串行通信,特点: 按位传送 造价低,适合于远距离传送 传送方式 全双工 半双工 单工,10,7.2 可编程定时计数器8253,11,8253基本功能,有3个独立的16位计数器 每个计数器可按照二进制或十进制计数 每个计数器计数频率最高为2MHz 每个计数器可选择6种不同的工作方式,12,8253的外部引线及内部结构,13,14,启动方式,软件启动:写入计数值 硬件启动:GATE上跳沿,15,

4、8253的工作方式方式0(计数结束中断),结果特点:计数器减1为0时,OUT升高,向CPU发出中断请求。 过程特点: (1)控制字写入:OUT0。当控制字写入控制字寄存器后,输出端OUT变成低电平。并且在计数值减到0之前一直保持低电平 (2)计数值写入:OUT不变,仍然为低电平 (3)启动方式:写入计数值。必须在下一个CLK时钟脉冲到来使,计数初值才由CR传送到CE,16,(4)计数期间:OUT为低电平 (5)计数为0时:OUT1,向CPU发出中断请求。直到CPU写入新的控制字或计数值时,才使OUT=0 (6)计数期间写入新的计数值:如果计数值是一个字节,则在写入后的下一个时钟脉冲,新的计数值

5、由CR送入CE,开始新的计数。如果计数值在两个字节,则写入第一个字节时中止计数,写入第二个字节后的下一个时钟脉冲时,新的计数值由CR送CE,启动计数器按新的计数值开始计数。,17,(7)GATE作用: GATE0时,禁止计数,计数器停止; GATE1,允许计数,此时计数器从刚才断的地方开始连续计数 (8)计数值有效期限:计数值一次有效,18,方式0基本工作时序,19,方式0GATE作用时序,20,计数期间写入新的计数值时序,21,结果特点:输出单拍负脉冲,脉冲宽度可编程设定 过程特点: (1)控制字写入:OUT=1 (2)计数值写入:OUT=1(不变) (3)启动方式:GATE上跳沿。启动后的

6、下一个CLK脉冲使OUT0,即延迟一个时钟周期。 (4)计数期间:OUT0 (5)计数为0时:OUT=1,8253的工作方式方式1(可编程单稳),22,(6)计数期间写入新的计数值:不影响原计数,只有当下一个GATE上跳沿到来时,才使用新的计数值 (7) GATE作用: GATE0或GATE1时,不影响计数,但若出现上跳沿则重新启动计数器,按最新计数初值开始计数。 (8)计数值有效期限:多次有效。计数初值写入CR后,在没有新的计数值写入CR之前,原计数值保持不变,每触发一次,就按这个初值装入CE。,23,方式1基本时序,24,GATE作用时序,25,计数期间写入新的计数值时序,26,结果特点:

7、产生连续的负脉冲信号,负脉冲宽度等于一个时钟周期。脉冲周期可由软件设定,脉冲周期计数值CLK脉冲周期 过程特点: (1)控制字写入:OUT=1 (2)计数值写入:OUT=1 (3)启动方式:两种。一是硬件启动:GATE上跳沿启动;二是软件启动:写入计数值启动(GATE1),8253的工作方式方式2(脉冲频率发生器),27,(4)计数期间:OUT1,在CE减到1时,OUT输出一个负脉冲,宽度为一个时钟周期 (5)计数为0时:OUT1,开始下一个周期的计数 (6)计数期间写入新的计数值:影响随后的脉冲周期 (7)GATE作用: GATE0时,OUT1,停止计数; GATE上跳沿时,启动计数器,重新

8、开始; GATE1时不影响计数器工作 (8)计数值有效期限:计数值重复有效。当计数器的值减到0时,CR的计数初值自动重新装入CE,循环计数,28,方式2基本时序,29,GATE的作用时序,30,计数期间写入新的计数值时序,31,结果特点:产生连续方波。方波的重复周期计数值CLK脉冲周期 过程特点: (1)控制字写入:OUT=1 (2)计数值写入:OUT=1 (3)启动方式:两种。一是硬件启动:利用GATE的上跳沿启动;二是软件启动:写入计数值启动(GATE=1),8253的工作方式方式3(方波发生器),32,(4)计数期间:若计数值N为偶数,则在前N/2计数期间,OUT1,后N/2计数期间,O

9、UT0;若计数值N为奇数,则在前(N+1)/2计数期间,OUT=1,后(N-1)/2计数期间,OUT=0 (5)计数为0时:OUT=1,完成一个周期,CR值自动装入CE,开始下一个周期 (6)计数期间写入新的计数值:不影响当前输出周期,当计数值减到0后,或GATE有上跳沿后,将把CR的新内容重新装入CE中,开始以新的周期输出方波,33,(7)GATE作用: GATE0时,计数停止,OUT=1; GATE1时,不影响计数器工作,计数进行; GATE有上跳沿时,下一个CLK时钟使CR装入CE,开始新的计数 (8)计数值有效期限:重复有效。,34,方式3基本时序,35,GATE的作用时序,36,计数

10、期间写入新的计数值时序,37,结果特点:计数器减为0时,输出一个CLK周期的负脉冲 过程特点: (1)控制字写入:OUT=1 (2)计数值写入:OUT=1 (3)启动方式:写入计数值启动。写入后,再过一个CLK周期,减1计数器CE获得计数初值,开始减1计数 (4)计数期间:OUT=1,8253的工作方式方式4(软件触发选通),38,(5)计数为0时:计数器减到0后,输出一个宽度为一个CLK周期的负脉冲,之后OUT=1,此负脉冲作为选通信号 (6)计数期间写入新的计数值:立即有效。写入新计数值后,在下一个时钟周期时,新计数值被装入CE,并开始新的计数。如果写入的计数值是2个字节,那么写入第一个字

11、节时,计数不受影响,写入第二个字节时的下一个CLK时钟脉冲开始新的计数。,39,(7)GATE作用: GATE0时,计数停止;GATE1时,允许计数,此时从暂停的地方开始连续计数。GATE信号不影响OUT的状态 (8)计数值有效期限:一次有效。只有在输入新的计数值后,才能开始新的计数过程,40,方式4基本时序,41,计数期间写入新的计数值时序,42,8253的工作方式方式5(硬件触发选通),结果特点:计数器减为0时,输出一个CLK周期的负脉冲 过程特点: (1)控制字写入:OUT=1 (2)计数值写入:OUT=1 (3)启动方式:GATE上跳沿。当GATE端有上跳沿信号后,下一个CLK脉冲装入

12、初值,开始计数 (4)计数期间:OUT=1,43,(5)计数为0时:计数器减到0时,输出一个宽度为一个CLK周期的负脉冲,之后OUT=1 (6)计数期间写入新的计数值:不影响本次计数。一旦GATE重新启动,将按新的计数初值开始计数 (7)GATE的作用: GATE0或GATE1都不影响计数,当GATE有上跳沿时,重新启动,按最新的计数初值开始计数 (8)计数值有效期限:多次有效。当计数减到0后,自动重新装入计数值,在GATE信号的上跳沿才开始计数,44,方式5基本时序,45,计数期间写入新的计数值时序,46,8253控制字,47,8253的初始化,先写控制字后写计数值 计数初值写入须遵循控制字

13、规定的顺序,48,8253与8088系统连接,49,8253的应用(1),例:设某8253通道1工作于方式0,按BCD方式计数,计数初值为400。通道0到控制寄存器的端口地址依次为80H83H,试写出8253的初始化程序。,50,解答,分析: 控制字:控制字为01110001B,写入控制寄存器,端口地址为83H。 计数值:计数初值为400,由于采用BCD计数,故应按BCD码方式组成,即0400H,送通道1,地址为81H。16位数送两次,先送低8位00H,后送高8位04H。,51,程序: MOV AL, 71H ;控制字 OUT 83H, AL MOV AL, 00H ;低8位计数值 OUT 8

14、1H, AL MOV AL, 04H ;高8位计数值 OUT 81H, AL,52,例72,写出图7-13(下图)中8253的初始化程序。其中,三个CLK频率均为2MHZ,计数器0在定时100us后产生中断请求;计数器1用于产生周期为10us的对称方波;计数器2每1ms产生一个负脉冲。编写8253的初始化程序。(其中端口地址为FF04HFF07H),53,54,分析,计算计数初值: 0通道:10us/0.5us=200 1通道:10us/0.5us=20 2通道: 1ms/0.5us=2000 确定控制字: 0通道:方式0,低8位计数值 1通道:方式3,低8位计数值 2通道:方式2,16位计数

15、值,00010000B=01H,01010110B=56H,10110100B=0B4H,55,程序,MOV DX, 0FF07H ;先写控制字,控制端口 MOV AL, 10H ;计数器0,低8位,方式0,二进制 OUT DX, AL MOV AL, 56H ;计数器1,低8位,方式3,二进制 OUT DX, AL MOV AL, 0B4H ;计数器2,先低8后高8,方式2,二进制 OUT DX, AL,56,MOV DX, 0FF04H MOV AL, 200 OUT DX, AL ;计数器0的初值送端口 MOV DX, 0FF05H MOV AL, 20 OUT DX, AL ;计数器1

16、的初值送端口 MOV DX, 0FF06H MOV AX, 2000 OUT DX, AL MOV AL, AH OUT DX, AL ;计数器2的初值送端口,57,例:某8088系统采用8253精确控制一个发光二极管闪亮,系统要求启动8253后使发光二极管点亮2秒,熄灭2秒,亮灭50次后停止闪动,系统工作结束。现有一个时钟脉冲源,频率为2MHZ,试说明各有关通道的工作方式。,8253的应用(2),58,解答: 1、计数器0:方式2,CLK0接2MHZ信号源,输出OUT0产生250Hz(周期为4ms)的脉冲序列 2、计数器1:方式3,CLK1接OUT0的250Hz脉冲信号,输出OUT1产生周期

17、为4s的方波,经过一个反相驱动器去控制一个发光二极管 3、计数器2:方式0,输出CLK2接OUT1的周期为4s的方波,输出OUT2向CPU产生中断,59,7.3 可编程并行接口8255,60,8255的引线及结构,61,1. 引线,连接系统端的主要引线: D0-D7 CS RD WR A0,A1 RESET,A1 A0 0 0 A端口 0 1 B端口 1 0 C端口 1 1 控制寄存器,62,引线,连接外设端的引脚: PA0 PA7 PB0 PB7 PC0 PC7,分别对应A、B、C三个端口,63,2. 结构,A组 B组,端口A 端口C的高4位,端口B 端口C的低4位,64,8255与系统的连

18、接示意图,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,8255,A口,B口,C口,D0D7,外 设,65,3. 工作方式,1. 基本输入/输出方式(方式0):A、B、C 2. 选通工作方式(方式1):A、B 3. 双向传送方式(方式2):A,66,方式0基本的输入或输出工作方式,适用于无条件地传送数据。如读一组开关状态、控制一组指示灯,CPU可随时读入开关状态。 基本功能: 具有两个8位口(A口和B口),两个4位口(C口的上半部和下半部) 任一端口都可作为输入或输出 输出是锁存的,输入是不锁存的 此方式无中断功能,在作查询方式工作时,可将C口的某些位作为传

19、送控制和状态信息,A、B口作为数据口,67,8255工作于方式0的连接示意图,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,8255,PA0 | PA7,B口,PC0,D0D7,数据,状态,数据,外设1,外设2,68,方式1选通的输入输出方式,A口、B口作数据输入或输出口,C口的某些位作为控制或状态信息,起应答联络和中断请求的作用,剩余的位作I/O使用 基本功能: 一个或两个选通的8位数据端口 每个端口含有三条控制线(固定的,不能用程序改变),提供中断逻辑 任何一个端口都可作为输入或输出 若只有一个端口工作于方式1,余下的13位可以工作在方式0 若两个端口都

20、工作在方式1,端口C剩下2位,可通过程序指定作输入或输出,也具有置位/复位功能,69,(1)方式1输入,当A口或B口工作于方式1输入时,每个端口指定C口中的三位作控制信号。对A口指定的是PC4、PC5、PC3三位,对B口指定的是PC2、PC1、PC0三位 PC4和PC2指定为STB信号,是设备的选通输入信号,低电平有效。由外设提供,STB的下降沿将端口数据线上的信息打入端口锁存器 PC5和PC1指定为IBF信号,是输入缓冲器满信号,高电平有效。是8255输出的状态信息。 PC3和PC0指定为INTR信号,是中断请求信号。高电平有效,STB=1,IBF=1,INTE=1时,中断请求有效 INTE

21、A由PC4控制, INTEB由PC2控制,70,方式1输入,71,(2)方式1输出,当A口或B口工作于方式1输出时,每个端口指定C口中的三位作控制信号。对A口指定的是PC7、PC6、PC3三位,对B口指定的是PC1、PC2、PC0三位 PC7、PC1指定为OBF信号,输出缓冲器满信号,低电平有效。 PC6、PC2指定为ACK信号,是外设响应信号,输入,低电平有效。 PC3、PC0指定为INTR信号,是中断请求信号。高电平有效,ACK=1,OBF=1,INTE=1时,中断请求有效 INTEA由PC6控制, INTEB由PC2控制,72,方式1输出,73,方式2使A口为外部设备和CPU之间提供一条

22、8位的双向数据通道(既能发送,又能接收)。工作时可用程序查询方式,也可用中断方式 基本功能: 只用于A口 一个8位的双向总线端口A(用于数据传送),一个5位的控制端口C(用于A口的控制和状态) 输入和输出都是锁存的,方式2双向(选通)传输方式,74,方式2,75,8255控制字,76,8255与8088连接示意图,77,8255与8088系统总线连接方法,78,8255的应用,例73:利用8255作为打印机的连接接口,并通过该打印机接口打印字符串,字符串长度放在DS的COUNT单元中,要打印的字符放在DATA单元开始的数据区中。,79,8255与打印机的连接图,80,8255初始化程序,MOV DX, 0FBC3H MOV AL, 81H ;方式控制字,A口方式0,输出, ;C口高半输出,低半输入 OUT DX, AL MOV AL, 0DH ;位控制字,使PC6初始状态为1 OUT DX, AL,81,打印一批字符的程序段,MOV CX, COUNT MOV SI, OFFSET DATA START: MOV DX,

温馨提示

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

评论

0/150

提交评论