第三章 定时技术.ppt
文本预览下载声明
二、定时的方法 为获得所需要的定时,要求有准确而稳定的时间基准,产生这种时间基准通常采用两种方法----软件定时和硬件定时。 1.软件定时 运用软件编程,循环执行一段程序而产生的等待延时。 优点:不需增加硬设备,只需编制相应的延时程序以备调用。 缺点:CPU执行延时待时间增加了CPU的时间开销,延时时间越长,这 种等待开销越大,降低了CPU的效率,浪费了CPU的资源。 2.硬件定时 它是采用可编程的定时/计数器或单稳延时电路产生定时或延时。 一、外部特性与内部逻辑 1、外部特性 (1)定时/计数器8253/8254是24脚双列直插式芯片,+5V电源供电。 (2)每个芯片内部有3个独立的计数器,通过编程选择计数器和设置工作方式,计数器既可作计数器用,也可作定时器用,故称定时/计数器,记作T/C。 ① 数据总线D0~D7:为三态输出/输入线。用于将8253与系统数据总线相连。 ② 片选线CS-:为输入信号,低电平有效。 ③ 读信号RD-:为输入信号,低电平有效。 ④ 写信号WR-:为输入信号,低电平有效。 地址线A1A0:这两根线接到系统地址总路线的A1A0上。 面向I/O设备的信号线: ⑥ 计数器时钟信号CLK:CLK为输入信号。 ⑦ 计数器门控选通信号GATE0-2:为输入信号。 ⑧ 计数器输出信号OUT0-2;为输出信号。 8253、8254 读写操作及端口地址 2.内部逻辑结构 计数器:8253有3个独立的计数器(计数通道), 计数器由16位初值寄存器、减1计数器和当前计数值锁存器组成。 计数初值寄存器(16位):用于存放计数初值(定时常数、分频系数),最大计数值为65536(64KB)。在初始化时同时一起装入的,计数初值寄存器的计数初值,在计数器计数过程中保持不变。 减1计数器(16位):用于进行减1计数操作,每来一个时钟脉冲,它就作减1运算,直至将计数初值减为零。 当前计数值锁存器(16位):用于锁存减1计数器的内容,以供读出和查询。 二、计数初值 计数初值与输入时钟(CLK)频率及输出波形(OUT)频率之间的关系为: Tc=CLK/OUT 例:CLK=1.193MHz ,OUT=18.2HZ, 则Tc=65549 三、读写操作及编程命令 1.方式命令的作用 主要是对8253进行初始化,初始化的工作有两点: (1)向命令寄存器写入方式命令,以选择计数器(3个计数器之一),确定工作方式(6种方式之一),指定计数器计数初值的长度和装入顺序以及计数值的码制(BCD或二进制码)。 (2)向已选定的计数器按方式命令的要求写入计数初值。 例1:选择2号计数器,工作在3方式,计数初值为533H(2个字节),采用二进制计数。其初始化程序段为: MOV DX,307H ;命令口 MOV ALB ;2号计数器的初始化命令字 OUT DX,AL ;写入命令寄存器 MOV DX,306H ;2号计数器数据口 MOV AX,533H ;计数初值 OUT DX,AL ;选送低字节到2号计数器 MOV AL,AH ;取高字节送AL OUT DX,AL ;后送高字节到2号计数器 四、工作方式及特点 8253/8254芯片的每个计数器通道都有6种工作方式可供选用。 1.????0方式-----低电平输出(GATE信号上升沿继续计数) 0方式有如下3个特点: 当向计数器写完计数值后,开始计数,计数一旦开始,输出端OUT就变成低电平,并在计数过程中一直保持低电平,当计数器减到零时,OUT立即变成高电平。 门控信号GATE为高电平时,计数器工作;当GATE为低电平时,计数器停止了工作,其计数值保持不变。如果门控信号GATE再次变高时,计数器从中止处继续计数。 在计数器工作期间,如果重新写入新的计数值,计数器将按新写入的计数初值重新工作。 例1:使计数器T1工作在0方式,进行16位二进制计数,计数初值的高低字节分别为BYTEH和BYTEL。 其初始化程序段为: MOV DX,307H
显示全部