《计数定时接口》PPT课件.ppt
《《计数定时接口》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《计数定时接口》PPT课件.ppt(106页珍藏版)》请在三一办公上搜索。
1、1,5.4 计数/定时器及接口芯片,2,5.4.1 可编程定时/计数器8253,掌握:引脚功能及计数启动方法6种工作方式及其输出波形8253的使用:芯片与系统的连接芯片的初始化编程,3,一、外部引线及内部结构,8253概貌3个16位的定时/计数器(通道)24引脚双列直插式最高计数频率2MHzTTL电平兼容单电源+5V供电,4,5,外部引线及内部结构,DB,D7-D0,8253,A1,A0,WR,RD,CS,通道2,通道1,通道0,CLK0GATE0OUT0,CLK1GATE1OUT1,CLK1GATE1OUT1,A1A0,IOWIOR片选信号,6,与系统总线连接的主要引脚:D7D0(数据线)C
2、SRDWRA1,A0(地址线)用于选择四个编址部件之一,A1 A0 选 择0 0 计数通道00 1 计数通道11 0 计数通道21 1 控制寄存器,7,定时/计数器芯片与外部连接的主要引脚:每通道均相同CLKn 时钟脉冲输入,计数器的计时基准。GATEn 门控信号输入,控制计数器的启停。OUTn 计数器输出信号,不同工作方式下 产生不同波形。(n=02),8,定时/计数器8253内部:有3个定时/计数器:定时/计数器0 定时/计数器1 定时/计数器2 每个计数器均包括:一个16位初值寄存器和一个16位计 数寄存器(减法计数器)。有1个8位控制寄存器 存放控制命令字,9,通过对4个端口地址的访问
3、可实现如下操作:,10,定时/计数器的工作过程,1.设置8253的工作方式;2.设置计数初值到初值寄存器;3.第一个CLK信号使初值寄存器的内容置入 计数寄存器;4.以后每来一个CLK信号,计数寄存器减1;5.减到0时,OUT端输出一特殊波形的信号。注:以上计数过程中还受到GATE信号的控制,11,二、计数启动方式,软件启动过程GATE端保持为高电平,当写入计数初值 后的第2个 CLK脉冲的下降沿开始数。硬件启动过程GATE端出现有一个上升沿后,对应CLK 脉冲的下降沿开始计数。,程序指令启动软件启动。外部电路信号启动硬件启动。,12,三、工作方式,方式0计数结束中断请求方式;方式1可编程单脉
4、冲方式(单稳态触发器);方式2频率发生器(连续负脉冲发生器);方式3方波发生器;方式4软件触发选通;方式5硬件触发选通;,13,工作方式介绍,方式0(计数结束中断),软件启动,不自动重复计数。装入方式字OUT端变低电平,写入计数初值后,每一次时钟CLK下跳沿做一次减1计数,减1到0计数结束OUT输出高电平。,方式1(单稳态触发器)硬件启动,不自动重复计数。装入方式字和计数初值后OUT端为电平,当GATE端有上跳变脉冲时,OUT端变为低电平,计数开始,每一次时钟CLK下跳沿做一次减1计数,减1到0计数结束OUT输出高电平。,14,方式2(频率发生器),可软、硬件启动,自动重复计数。装入方式字和初
5、值后OUT端变高电平,每一次时钟CLK下跳沿做一次减1计数,计数至1时OUT输出一个时钟周期的负脉冲,计数初值又自动赋值给减1计数器,并连续重复上述过程。注:设CLK时钟周期为tg,计数初始值为N,则连续负脉冲周期T=N*tg。,15,方式3(方波发生器),可软、硬件启动,自动重复计数。装入方式字和初值后OUT端为高电平,然后OUT连续输出对称方波:计数初值N为偶数时,正负波对称,均为 N/2个CLK宽;计数初值N为奇数时,正负波不对称,正波(N+1)/2 个CLK,负波为(N-1)/2 个CLK。,注:当计数初值N为偶数时,输出方波对称,当N为奇数时,输出方波不对称。设CLK时钟周期为tg,
6、计数初始值为N,则连续方波周期T=N*tg。,16,方式4(软件触发选通),软件启动,不自动重复计数。装入方式字和初值后输出端变高电平,每一次时钟CLK下跳沿做一次减1计数,计数结束输出一个CLK宽度的负脉冲。,方式5(硬件触发选通)硬件启动,不自动重复计数。OUT端波形与方式4相同。,17,四、8253控制字,用于确定各计数器的工作方式。8253必须先初始化才能正常工作。每个计数器都必须初始化一次。CPU通过OUT指令把控制字写入控制寄存器。,18,注:二进制计数最大计数值为FFFFH十进制计数(BCD码计数)最大计数值9999H,8253回顾,1.假设8253与系统接口地址为80H-83H
7、,则定时器/计数器0的地址为()。A 80H B 81H C 82H D 83H,2.计算机只能对8253进行写操作的端口是()。A.定时器/计数器0通道;B.定时器/计数器1通道;C.定时器/计数器2通道;D.控制寄存器;,19,3.8253有()个独立16位可编程定时器/计数器,每个定时器/计数器通道均有()种工作方式,如果对8253控制口写入如下控制字CW=10110110B,则对8253进行了()初始化。4.8253定时器/计数器启动方式有两种分别是()和()。,20,21,五、8253的应用,如何与系统总线连接?如何对8253编程?设置工作方式 置计数初值,22,8253与系统总线的
8、连接,CLKi,GATEi,OUTi,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,高位地址A15-A2,8253,共三组,8253占用4个接口地址:计数器0 计数器1 计数器2 控制寄存器,23,例 给8088系统总线连接一片8253定时计数器,要求端口地址为80H-83H。画出接口硬件图。例 给8086系统总线连接一片8253定时计数器,要求端口地址为80H、82H、84H、86H。画出接口硬件图。(与8086CPU连接的I/O端口地址必须都是偶地址),24,8253编程 初始化程序流程,写控制字,写计数值低8位,写计数值高8位,*,非必须,写入顺序:可
9、按计数器分别写入控制字和初值。也可先写所有计数器控制字,再写入它们的初值,25,例:8253的计数器2用作方式2,将频率为1.19MHz的输入脉冲转变成频率为500Hz的脉冲信号。8253的端口地址为70H73H。试编写初始化程序段。解:N1.19106/500=2380 094CH则其初始化程序段为:MOV AL,0B4H;10110100,计数器2方式2二进制计数OUT 73H,AL;控制字送入控制寄存器MOV AL,4CHOUT 72H,AL;计数值低8位送入计数器2MOV AL,09HOUT 72H,AL;计数值高8位送入计数器2,26,例:采用8253作定时/计数器,其接口地址为01
10、20H0123H。输入8253的时钟频率为2MHz。计数器0:每10ms输出1个CLK脉冲宽的负脉冲(方式2)计数器1:产生10KHz的连续方波信号(方式3)计数器2:启动计数5ms后OUT输出高电平(方式0)画线路连接图,并编写初始化程序。,27,CLK0,GATE0,OUT1,D0D7,WR,RD,A1,A0,CS,DB,WR,RD,A1,A0,译码器,8253,CLK2,GATE1,GATE2,+5V,CLK1,2MHz,OUT0,OUT2,?,线路连接图:,28,确定计数初值:CNT0:N0=10ms/0.5us=20000(65535)CNT1:N1=2MHz/10KHz=200 C
11、NT2:N3=5ms/0.5us=10000确定控制字:CNT0:方式2,16位计数值 00 11 010 0 CNT1:方式3,低8位计数值 01 01 011 0 CNT2:方式0,16位计数值 10 11 000 0,29,8253应用举例 初始化程序,CNT0:MOV DX,0123HMOV AL,34HOUT DX,ALMOV DX,0120HMOV AX,20000OUT DX,ALMOV AL,AHOUT DX,ALCNT1:MOV DX,0123HMOV AL,56HOUT DX,ALMOV DX,0121H,MOV AL,200OUT DX,ALCNT2:MOV DX,012
12、3HMOV AL,0B0HOUT DX,ALMOV DX,0122HMOV AX,10000OUT DX,ALMOV AL,AHOUT DX,AL,30,*如何扩展定时/计数范围?,当定时长度不够时,可把2个或3个计数通道串联起来使用,甚至可把多个8253串联起来使用。例:CLK频率为1MHz,要求在OUT1端产生频率1Hz的脉冲。,31,这时可将计数器0、1串联,工作方式都均为方式3,计数初值均为1000。连接方法见下图。,8253,OUT1,GATE1,CLK1,OUT0,GATE0,CLK0,+5V,+5V,1MHz,1KHz,1Hz,32,8253小结,包含3个16位计数器通道4个编址
13、部件:CNT0/1/2和控制寄存器每个计数器通道工作前必须初始化:控制字和计数初值6种工作方式每种工作方式:启动方式、输出波形、是否可重复计数等各不相同.,33,5.5 可编程并行接口芯片8255,特点:含3个独立的8位并行输入/输出端口,各端口均具有数据的控制和锁存能力;可通过编程设置各端口的工作方式和数据传送方向(入/出/双向)。,34,一、引脚介绍,连接系统端的主要引线:D0D7CSRDWRA0,A1 RESET复位信号,接系统总线的RESET,A1 A0 选择0 0 端口A0 1 端口B1 0 端口C1 1 控制寄存器(只写口),注:8255复位后(1)控制寄存器清零;(2)A、B、C
14、三个端口皆为输入口,且内容皆为0;,35,36,引脚(续),连接外设端的引脚:PA0PA7PB0PB7PC0PC7,分别对应A、B、C三个8位输入/输出端口,三个端口可通过编程分别指定为输入或输出口。其中,C口即可用作独立的输入/输出口,也可用作A、B口的控制信号或状态信号。,37,二、8255与8088系统的连接示意图,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,8255,A口,B口,C口,D0D7,外 设,A15A2,系统总线,38,三、8255工作方式,基本输入/输出方式(方式0),(A、B、C口)选通输入/输出方式(方式1),(仅A、B口)双向传送
15、方式(方式2),(仅A口),某端口工作于哪一种方式,可通过软件编程来指定。即向8255写入方式控制字来决定其工作方式。,39,1、工作方式0,要点:8255 A口、B口、C口均为工作方式0时,相当于三个独立的8位简单接口。A、B端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出。C端口即可以是一个8位的简单接口,也可以分为两个独立的4位端口,分别设定输入输出方向。,40,A口、B口、C口均为方式0使用时,输入或输出方向可由方式字设置,如下所示:,41,2、工作方式1,只有A、B口可使用方式1。当A、B口以方式1作输入或输出口使用时,C口就不能做I/O口使用了,C口的部分位固定用作
16、A、B口的选通控制信号或状态信号。,42,例如:A口、B口均为方式1输入时,C口的引脚功能,STB选通信号。它将外设数据送入8255的输入缓冲器。IBF输入缓冲器满。CPU用IN指令取走数据后,此信号被清除。INTR中断请求。STB的后沿产生,可用于中断CPU,让CPU读走输入锁存器中的数据。是否允许发出INTR请求,受中断允许位INTE控制。只有在 INTE=1且IBF为高电平时,才发出INTR请求信号。,43,44,(2)A口、B口均为方式1输出时 C口的引脚功能,OBF输出缓冲器满,低电平有效,通知外设取走数据。ACK外设响应信号,表示已从数据端口取走数据。此信号使OBF变高。INTR8
17、255发出的中断请求信号,通知CPU输出下一个数据。是否允许8255产生INTR信号,由中断允许位INTE控制,只有在INTE=1和OBF为高电平时(输出缓冲器空)时,INTR才有效。,45,46,3、工作方式2(双向方式),只有A口可工作在方式2下,A口工作在方式2时,C口的5条线为A口提供传输联络信号。方式2为双向方式既是输入口,又是输出口。方式2时C口的引脚功能 A口做输入口使用时,能否发中断请求,受INTE2控制;A口做输出口使用时能否发出中断请求,受INTE1控制。,47,方式2的应用说明:,当A口工作于方式2时,B口允许工作于方式0或方式1。(1)当A口工作于方式2,B口工作于方式
18、0时PC口引脚功能为:(2)当A口工作于方式2,B口工作于方式1输入时PC口引脚功能为:,48,(3)当A口工作于方式2,B口工作于方式1输出时PC口引脚功能为:,49,各种工作方式下如何设定8255的中断允许:,INTE可利用对C口的位控操作来设置:方式1输入:A口的INTEA:对PC4按位置1或清0 B口的INTEB:对PC2按位置1或清0方式1输出:A口的INTEA:对PC6按位置1或清0 B口的INTEB:对PC2按位置1或清0双向方式_方式2 INTE1:对PC.bit6按位置1或清0 INTE2:对PC.bit4按位置1或清0如何对PC口进行位控操作见8255编程!,50,四、82
19、55 的初始化编程 包含两个内容:工作方式设置及对PC口按位操作,设定8255工作方式以及对PC口按位操作均是通过对8255的控制寄存器写操作完成的。方式控制字:确定3个端口的工作方式;C口按位控制字:对8255 PC口按位置1或清0;,51,方式控制字,52,C口按位置1或清0控制字,8255知识回顾,1、8255是一个可编程并行接口芯片,在与计算机总线连接时,可形成()个端口地址。若端口地址是F8H、F9H、FAH和FBH,则PA口地址是(),控制寄存器口地址是()。2、8255的PA口、PB口、PC口均为()位并行接口,可通过对8255进行初始化编程来设置各端口的工作方式和传输方向,当P
20、A、PB口选择方式1、方式2使用时,C口就不能做为()使用了,C口的部分位固定用作A、B口的()信号或()信号。3、PA口选择方式1输入口使用时,8255能发出INTRA中断请求信号的条件是()。4、8255初始化编程包括()和(),两项内容均写入8255的()端口。5、设8255端口地址是200H-203H,PA口选择方式1输入口使用,不允许中断,PB口选择方式1输出口使用,允许中断,对8255初始化编程。,54,例 设8255与系统连接形成的端口地址为120H123H。设定A 口为方式1输入,B口为方式0输出,允许A口中断,C口I/O线设定为输出。编程对8255初始化。,55,五、8255
21、芯片的应用,8255芯片与系统的连接;8255编程:包括8255芯片的初始化(设置8255各口工作方式、按位设置C口指定位状态)对8255相应输入/或输出口的访问编程;,56,例1 在看懂下面硬件图基础上按下列要求对8255和8253编程。要求:(1)当开关闭合时,使相应继电器通电动作;开关断开时,继电器不动作;(2)系统每隔100ms检测一次开关状态,实现相应的继电器控制;(3)初始状态下继电器不动作。,57,10Hz,CS,A0,A1,WR,RD,DB,PA0,PA7,PB0,PB7,+5V,+12V,K,继电器,384H387H,388H38BH,CS,A0,A1,OUT1,CLK1,2
22、MHz,CLK0,OUT0,8259APIC,WR,RD,DB,8253,8255,INTR,Q1,R1,R2,D1,2KHz,A1A0,IORIOW,D7-D0,58,题目分析:,使8255的A端口和B端口均工作于方式0;且A口为输出,B口为输入。8253计数器0和计数器1均工作于方式3,利用OUT0的输出作为计数器1的时钟信号,其输出频率为2KHz,OUT1输出频率为10Hz(周期100ms);OUT1作为中断信号,每100ms产生一次中断;CPU响应中断后检测开关状态,控制继电器的动作;8253两个计数器的计数初值分别为:CNT0:2MHz/2KHz=1000(16位)CNT1:100m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计数定时接口 计数 定时 接口 PPT 课件
链接地址:https://www.31ppt.com/p-5604147.html