微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章 常用可编程数字接口电路

上传人:E**** 文档编号:89500977 上传时间:2019-05-26 格式:PPT 页数:94 大小:2.07MB
返回 下载 相关 举报
微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章  常用可编程数字接口电路 _第1页
第1页 / 共94页
微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章  常用可编程数字接口电路 _第2页
第2页 / 共94页
微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章  常用可编程数字接口电路 _第3页
第3页 / 共94页
微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章  常用可编程数字接口电路 _第4页
第4页 / 共94页
微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章  常用可编程数字接口电路 _第5页
第5页 / 共94页
点击查看更多>>
资源描述

《微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章 常用可编程数字接口电路 》由会员分享,可在线阅读,更多相关《微机原理与接口技术 教学课件 ppt 作者 吉海彦 第07章 常用可编程数字接口电路 (94页珍藏版)》请在金锄头文库上搜索。

1、常用可编程 数字接口电路,C H A P T E R,7,本 章 内 容,1,3,2,4,概 述,可编程定时器/计数器Intel 8253,可编程并行接口芯片Intel 8255A,可编程串行输入/输出接口Ins 8250,第一节 概 述,可编程数字接口电路根据其在系统中所起的作用可分为两大类: 专用控制器 在系统工作过程中起到一定的管理控制作用; 通用接口芯片(如图7-1所示) 主要用于数据通信。,第一节 概 述(续),从它们的结构上看,可以把一个接口分为两部分:,左半部分接口与系统总线相连,包括总线收发器及读写控制逻辑,右半部分接口与各种I/O设备相连,包括状态寄存器、控制寄存器、数据输入

2、/输出锁存器和缓冲器。,图7-1 通用接口芯片,第二节 可编程定时器/计数器 Intel 8253,基本概念: 定时:产生符合时间要求的信号的过程; 计数:对一些脉冲信号或外部事件的数量进 行统计的过程;,第二节 可编程定时器/计数器 Intel 8253,定时器和计数器在工作方式上有许多相似之处: 作为计数器时,输入的计数信号是随机的, 计数的是外部脉冲信号; 作为定时器时,输入的脉冲信号具有周期性, 计数的是内部基准时钟产生的脉冲。,一个定时电路可完成计数功能。,第二节 可编程定时器/计数器 Intel 8253,计算机系统中的定时方法包括: 软件定时:通过CPU执行一个循环程序获得; 节

3、省硬件资源; 但降低了CPU的效率。 不可编程: 硬件定时 可编程:,由计数器等元器件组建的一个专用的计时电路。,由大规模集成电路芯片构成,定时时间及定时方式可通过软件编程灵活设置。,Intel 8253 的内部结构及外部引脚,Intel 8253的主要功能有:, 具有3个独立的16位定时/计数通道,分别称为计数器0,计数器1和计数器2。, 每个通道有6种工作方式,可实现精确定时及对外部脉冲计数,由程序进行设置选择;, 每个通道内的计数器均可以按照二进制或BCD码计数;,每个计数器的计数速率可达2MHz(Intel 8254最高计数速率达10MHz);,可由软件方便的设置延时时间的长短;,所有

4、输入输出都与TTL兼容。,Intel 8253的内部结构,Intel 8253的内部结构如图7-2a所示。,计数器02是三个定时器/计数器通道,内部结构相同,如图7-2b所示。,数据总线缓冲器是Intel 8253与系统数据总线连接的8位双向三态缓冲器。,读/写逻辑电路接收来自系统总线的信号。,控制字寄存器,Intel 8253的外部引脚,Intel 8253的外部引脚如图7-2c所示。,D7D0:八位双向三态数据线;,A1、A0:用于寻址三个计数器和控制字寄存器。,这三个信号分别是写、读和片选信号。,CLK0CLK2:计数脉冲信号输入。,GATE0GATE2:门控信号输入引脚。,OUT0OU

5、T2:计数器02的计数结束输出引脚。,Intel 8253的工作方式,每个通道都具有六种工作方式的选择权,需注意以下几点: 当控制字写入Intel 8253时,其内部所有的控制逻辑电路立即复位,输出端OUT进入初始状态; 软启动: 计数器的启动 硬启动: 多数情况下,计数器启动一次只工作一个周期,但有两种方式可供选择,若选择则自动重复计数。,用输出指令向计数器赋初值启动计数;,写入计数初值后计数器并未启动,需门控信号GATE变成高电平时才能启动;,Intel 8253的工作方式(续),方式0 工作于方式0(计数结束中断方式)时,各引脚信号时 序关系见图7-3(a)。,方式1 工作于方式1(可重

6、触发的单稳态触发器 )时,各引脚 信号时序关系见图7-3(b)。,方式2 工作于方式2(分频器 )时,各引脚信号时序关系见图 7-3(c)。,方式3 工作于方式3(方波发生器 )时,各引脚信号时序关系 见图7-3(d)。,方式4 工作于方式4(软件触发的选通信号发生器 )时,各引 脚信号时序关系见图7-3(e)。,方式5 工作于方式5(硬件触发的选通信号发生器 )时,各引 脚信号时序关系见图7-3(f)。,Intel 8253的工作方式(续),表7-2给出了GATE信号功能表,即GATE信号在各种工作方式下对计数器计数过程的影响。,表7-2 GATE信号功能表,Intel 8253的工作方式(

7、续),表7-3 8253工作方式一览表,Intel 8253的初始化编程,通过初始化编程可确定Intel 8253各通道的工作方式及计数初值。工作方式的确定通过向Intel 8253控制寄存器中写入控制字来完成。 1. 8253控制字格式(如图7-4所示),2.初始化编程 对计数器设置初值前,必须先写控制字以确定工作方式。 初值设置时,要符合控制字中的格式规定。 在对8253编程的过程中,有两种情况: 对8253执行写操作,即写入控制字和计数初值,规定和启动计数器工作,为初始化编程; 对8253执行读操作,读出的是指定通道的当前计数值。,Intel 8253的初始化编程,2.初始化编程 初始化

8、编程 当为软启动时,写入初值后,计数就开始了。 读取8253的计数值 为了保证读到稳定准确的数据,通常采用以下两种作法: 1) 利用GATE信号使计数过程暂停。 2) 利用将控制字中D5D4位置成00的方法将待读计数值锁存至锁存器,这种方法不影响计数过程。,Intel 8253的初始化编程,Intel 8253的应用举例,【例7-1 】用8253(地址40H43H)将5MHz的脉冲变为1Hz的脉冲。,图7-5 例7-1系统连接图,分析:可采用方式2分频器完成,但初值=FCLK/FOUT=5MHz /1Hz =510665536,怎么办? 解决的办法是:需要2个T/C(定时器/计数器通道)级联,

9、T/C0采用方式3产生连续分频方波,做T/C1的CLK,T/C1采用方式2产生1Hz脉冲。两个T/C的GATE统一控制。系统连接如图7-5所示。,Intel 8253的应用举例,例7-1程序如下: MOV AL,00110111B;T/C0控制字 OUT 43H,AL MOV AX, 5000H;T/C0 初值 OUT 40H,AL MOV AL, AH OUT 40H,AL,MOV AL,01110101B ;T/C1 控制字 OUT 43H,AL MOV AX, 1000H ;T/C1初值 OUT 41H,AL MOV AL, AH OUT 41H,AL,Intel 8253的应用举例,【

10、例7-2】 8253的CLK0的时钟频率是8KHz,在系统如图7-6的连接方式下,编程使其能产生周期为9s,占空比为5:9的方波,同时计算T/C0最大定时时间是多少?,图7-6 例7-2系统连接图,【例7-2】分析: 1 在CLK0已知的情况下,可算出其周期,最大定时时间与CLK周期及计数初值的最大值有关。 2 根据系统连接图,可分析出Intel 8253端口地址为90H、92H、94H和96H,同时,可将T/C0 设置为方式3,使其产生1Hz;T/C1设置为方式3,产生周期为9秒,占空比为5:9的方波。,Intel 8253的应用举例,Intel 8253的应用举例,【例7-2】解: TCL

11、K0=1/fCLK0 =1/8000=0.125ms 最大定时时间 655360.25ms 8.192s,产生方波的初始化程序如下: MOV AL,00110111B ;T/C0 控制字 OUT 96H,AL MOV AX, 8000H ;T/C0 初值 OUT 90H,AL MOV AL, AH OUT 90H,AL MOV AL,01110111B ;T/C1 控制字 OUT 96H,AL MOV AX, 9H ;T/C1初值 OUT 92H,AL MOV AL, AH OUT 92H,AL,Intel 8253的应用举例,【例7-3】下面是一个航空发动机数字控制系统中采用8253测速的实

12、例。硬件电路如图7-7(a)所示,传感器输出的转速信号经过衰减、滤波和光电耦合处理,再经过整形电路送到8253计数器,进行测量。被测发动机低压转子转速n为0转/分11156转/分,发动机每转对应转速传感器输出300个脉冲。基本测量原理是,测量D个(D值根据当时实际转速范围选择)传感器输出脉冲CLK,所占有的时间为多少个(设为X个,待测)标准时钟周期PCLK(设为Tr,单位s,由系统时钟适当分频而成),即 从而算出实转速,图7-7 例7-3图a)转速测量电路,Intel 8253的应用举例,【例7-3】 8253的3个计数器分别工作于方式0、方式1和方式0。图7-7(b)为测量过程的时序。 工作

13、过程为:通过OUT0的脉冲下降沿(反相后为上升沿)触发GATE1,使计数器1开始对被测转速脉冲计数;同时,OUT1经反相后使GATE2为高电平(在计数期间),允许计数器2对基准时钟信号PCLK计数。在计数器1计满D个脉冲后,OUT1输出高电平,经反相后为低电平,迫使计数器2停止计数。此时,CPU读出计数器2中的计数值即可算出发动机的转速。,Intel 8253的应用举例,图7-7 例7-3图b)测量过程时序,Intel 8253的应用举例,设8253端口地址为280H、282H、284H和286H,主要程序片段如下: 主程序中对8253初始化: INIT_C:MOV DX,286H ;控制端口

14、地址为286H MOV AL,52H ;计数器1初始化:方式1 ;只读/写低字节 OUT DX,AL ;送方式控制字到控制寄存器 MOV AL,0BOH ;计数器2初始化:方式0 ;先读/写低字节,后读/写高字节 OUT DX,AL MOV AL,10H ;计数器0初始化:方式0 ;只读/写低字节 OUT DX,AL,INIT_D:MOV DX,282H ;计数器1 MOV AL,20 OUT DX,AL ;写入计数初值D=20到计数器1 INC DX INC DX ;得到计数器2的地址 MOV AL,0 OUT DX,AL ;写入低8位计数值到计数器2 OUT DX,AL ;写入高8位计数到

15、计数器2,初值0相当于10000H MOV DX,280H ;计数器0 MOV AL,01H OUT DX,AL ;写入计数初值1到计数器0,启动测量过程中断 ;服务程序中,读取计数器2的数据,计算转速,Intel 8253的应用举例,IN_DATA: MOV AL,10000000B MOV DX,286H OUT DX,AL ;锁存计数器2 MOV DX,284H ;读计数器2的内容,等于10000HX IN AL,DX MOV AH,AL IN AL,DX XCHG AL,AH NEG AX ;AX=X,Intel 8253的应用举例,第三节 可编程并行接口芯片 Intel 8255A,计算机与外部设备之间,计算机与计算机之间的信息交换称为通信。从数据传输的形式上区分,通信有两种方式:并行通信与串行通信。 并行通信顾名思义即n位二进制数借助n条数据线同时传输的方式。并行通信传输速度快、效率高。常用于数据传输速度要求高而传输距离较短的场合。在并行通信的过程中,常常借助于一些并行接口电路。 Intel 8255A即Intel公司生产的8位可编程并行接口芯片。,Intel 8255A 的内部结构,图7-8

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号