定时、计数技术

上传人:德****1 文档编号:1082426 上传时间:2017-05-27 格式:PPS 页数:50 大小:715KB
返回 下载 相关 举报
定时、计数技术_第1页
第1页 / 共50页
定时、计数技术_第2页
第2页 / 共50页
定时、计数技术_第3页
第3页 / 共50页
定时、计数技术_第4页
第4页 / 共50页
定时、计数技术_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《定时、计数技术》由会员分享,可在线阅读,更多相关《定时、计数技术(50页珍藏版)》请在金锄头文库上搜索。

1、第三章 定时/计数技术,定时与计数可编程定时/计数器8253PC机的时钟,定时与计数,1.定时,定义:提供的时间基准。,分类:内部定时、外部定时。,2.计数,定时与计数本质上是一致的。,计数的信号随机,定时的信号具有周期性。,3.应用,软件延时,MOV CX,200 ;1Delay: nop;1 nop;1 loop Delay;5,T (1 + (1+1+5)*200) * 机器周期为什么是,而不是=?,如何实现更长时间的延时?,1.软件定时,通过软件指令周期方法定时,如执行循环程序。增加CPU负担,通用性差,一般用于短延时。指令或机器周期的计数=定时时间(不准确)。,2.不可编程硬件定时,

2、采用中小规模IC构成。不增加CPU负担,成本低,定时值不可改变。,3.可编程硬件定时,采用可编程计数器完成,软件可改变计数值。,可编程定时/计数器:实质上定时和计数本质上都是脉冲计数器,定时计的是内部基准时钟源产生的脉冲,计数是计外部脉冲。,定时的方法,可编程定时/计数器8253,8253的特点计算机及电子系统中需要定时信号,如系统的日历时钟,动态存储器的刷新,应用系统的定时中断、定时查询与检测等。可编程定时器芯片可以产生精确的时间间隔,形成各种脉冲序列,灵活性强。依所需时间间隔,设置计数器的时间常数,在一外部脉冲驱动下进行减1计数,计数值为0时,产生输出信号,供系统使用。,8253的功能,(

3、1)有3个独立的16位计数器。(2)每个计数器都可以按照二进制或BCD码进行计数。(3)每个计数器的计数速率可高达2MHz(8254-2计数频率可达到10MHz)。(4)每个计数器有6种工作方式,可由程序设置和改变。,8253的外部特性,8253的逻辑框图(内部特性),逻辑部件说明,(1)数据总线缓冲器。这是8253与CPU数据总线连接的8位双向三态缓冲器。CPU用输入输出指令对8253进行读写的所有信息,都是通过这8条总线传送的。(2)读/写逻辑。这是8253内部操作的控制部分。(3)控制字寄存器。在8253初始化编程时,由CPU写入控制字以决定计数器的工作方式。此寄存器只能写入而不能读出。

4、(4)计数器#0、计数器#1、计数器#2。这是三个计数器/定时器,每一个都是由一个16位的可预置值的减法计数器构成。这三个计数器的操作是完全独立的。,8253的编程模型,CR:16位;写入两次、清零CE:16位;写入、计数、输出OL:16位;先锁存再读出状态REG:8位先锁存再读出,注意:GATE信号的作用与应用,重写CR的效果。计数初值:N=fCLKi/fOUTi,在不同工作方式及定时/计数时的应用不同。,计数器的工作说明,8253的操作与编址,CS与A0、A1 =操作时的端口地址;IOW/IOR 对应WR/RD,D7,D0,D6,D5,D4,D3,D2,D1,8253的控制字格式,选择计数

5、器,选择读/写方式,选择工作方式,选择码制,(1)不同通道的计数初值写到不同地址中:A1A0=0010; (2)每次写入一个字节; (3)根据控制字定义,决定高、低字节写入方法。 (4)初始值的范围是: 二进制为65536(0000H)1(0001H)。 十进制为10000(0000H)1(00001H)。BCD码,计数初值,8253的初始化过程,(1)写入计数器控制字,规定计数器的工作方式。(2)写入计数值。 若规定只写低8位,则写入的为计数值的低8位,高8位自动置0。 若规定只写高8位,则写入的为计数值的高8位,低8位自动置0。 若是16位计数值,则分两次写入,先写入低8位,再写入高8位。

6、,(1)写工作方式控制字 (2)设置计数初值,例:MOV AL, 01110101B; T/C1,先低后高字节,方式2,BCDOUT 43H, ALMOV AX, 2000H ; 计数初值为2000 OUT 41H, AL ;MOV AL, AH OUT 41H,AL ; MOV AL,00010110B; T/C0,只低字节,方式3,二进制 OUT 43H,AL OUT 40H,50H ; 计数初值为50H(80),注意:(1) 每个使用的T/C均要初始化; (2) 计数初值的设置与T/C的CLK密切相关; (3) 计数初值的设置方法由控制字决定。,T/C初始化,工作方式控制字(A1A0=1

7、1)D7D60001,D5D4=00 (a)锁存当前计数值或禁止计数 (b)读取当前计数值,例:MOV AL,01000101B; T/C1,锁存 ; 先低后高字节,方式2,BCD OUT 43H,AL IN AL,41H MOV AH,AL IN AL,41H XCHG AH,AL ;AX为T/C1当前计数值,T/C数据读取,8253的工作方式,8253的每个计数通道都有6种工作方式。区分标志:输出波形启动计数器的触发方式计数过程中门控信号GATE对计数据操作的控制不同。,CLOCK,OUT,4,3,2,1,0,n=4,OUT,GATE,n=5,5,4,3,2,1,0,方式0: 低电平输出,

8、GATE(TRIGGER),4,3,2,1,0,OUTPUT,3,4,2,1,0,CLOCK,GATE(TRIGGER),OUTPUT,2,3,4,方式1: 低电平输出,n=4,4,3,2,1,0(3),OUTPUT,GATE(RESET),OUTPUT,CLOCK,n=4,n=3,0(4),3,2,1,2,1,0,0(3),3,2,1,0(3),2,1,0(3),2,1,0,方式2: 周期性负脉冲输出,4,2,2,1,0(4),OUTPUT n=4,GATE(RESET),OUTPUT n=4,n=4,n=3,0(4),2,1,0,3,2,1,0(4),2,1,3,3,1,(MODE 3)

9、CLOCK,OUTPUT n=5,3,2,1,0(5),4,3,2,1,0(5),4,3,0(5),4,3,0,方式3: 周期性方波输出,CLOCK,n=4,OUTPUT,n=4,0,1,2,3,4,4,4,3,2,1,0,LOADn,GATE,OUTPUT,方式4: 软件触发的单次负脉冲输出,CLOCK,OUTPUT(n=4),0,1,2,3,4,4,3,2,1,0,GATE,GATE,OUTPUT,4,3,方式5: 硬件触发的单次负脉冲输出,工作方式的比较,8253在微机中的应用,来自主板上74LS138的Y2,地址范围是40H5FH,加上A1A0两根地址线,组成8254的端口地址是40H

10、、41H、42H、43H。,PC系列机定时系统结构框图,工作方式:3方式,计数初值:65536。,1.系统定时器,连接到8259A的IRQ0(中断类型号为8)上。 fOUT0=1.1931816MHz/65536=18.2Hz, 即:每秒产生18.2次中断用于日时钟计时。,应用:系统BIOS的INT 8H用作日时钟计时; INT 8H调用INT 1CH作为用户定时中断接口。,2.软盘驱动器马达自动延迟控制,计数器0:系统定时器,工作方式:2方式,计数初值:18。,连接到8237的DREQ0上,定时产生负脉冲。 脉冲宽度=1/ 1.1931816MHz=838ns, 脉冲周期=18/1.1931

11、816MHz=15.08s, 即:每隔15.08s产生一个脉冲用于刷新。,计数器1:动态存储器定时刷新控制,用8253(地址40H43H)将5MHz的脉冲变为1Hz的脉冲。初值=fCLK/fOUT=510665536,怎么办?需2个T/C级联,T/C0采用方式3产生连续分频方波,做T/C1的CLK,T/C1 采用方式2产生1Hz脉冲。两T/C的GATE统一控制。,MOV AL,00110111B;T/C0 OUT 43H,ALMOV AX, 5000HOUT 40H,ALMOV AL, AHOUT 40H,ALMOV AL,01110101B;T/C1MOV AX, 1000HOUT 41H,

12、ALMOV AL, AHOUT 41H,AL,应用举例1:分频器,工作方式:3方式,计数初值:由调用程序控制。,与8255的PB口D1信号“与”后连接到扬声器上,控制扬声器发声频率及时长。,8255控制发声:8254的OUT2=1,CPU控制8255的PB口的D1位的电平实现;8253控制发声:8255的PB口的D1位为高电平,控制8253的T/C2的OUT2实现。通过改变OUT2的方波信号频率,就可以改变扬声器发声的音调。 CR预置值CLK2脉冲频率/发声的频率,转图,计数器2:扬声器音频发生器,BEEP PROC FARIN AL,61HMOV AH,AL PUSH AXMOV AL,10

13、110110BOUT 43H,ALMOV AX,0533H;=1.1931816MHz/896HzOUT 42H,ALMOV AL,AHOUT 42H,ALPOP AX,发声示例程序,功能:按照指定的时间间隔发896Hz声音入口参数:CX=指定时间;出口参数:无,OR AL,03H ;置61H端口D0、D1均为1,;打开扬声器OUT 61H,ALNOPL1: LOOP L1;延迟AND AL,FD ;置61H端口D1为0,;封锁OUT2输出OUT 61H,ALMOV AL,AHOUT 61H,ALRETBEEP ENDP,发声示例程序(续),8253的CLK0的时钟频率是8KHz,问1)T/C0最大定时时间是多少?2)要求8253端口地址为90H、92H、94H和96H,请使用74LS138译码器加简单门电路完成地址连线。3)现在要求使用该8253产生周期为9秒,占空比为4:5的方波,请在上面的电路图中完成电路,并编写初始化程序。,

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

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

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