资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,微型计算机原理及其应用,第九章:可编程的定时器,/,计数器,8253,济南大学自动化与电气工程学院,1,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,可编程的定时器,/,计数器,8253,2,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,可编程的定时器,/,计数器,8253,3,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,定时器,/,计数器概述,在微机系统或智能化仪器仪表的工作过程中,经常需要使系统处于定时工作状态,或者对外部过程进行计数。定时或计数的工作实质均体现为对脉冲信号的计数,如果计数的对象是标准的内部时钟信号,由于其周期恒定,故计数值就恒定地对应于一定的时间,这一过程即为定时,如果计数的对象是与外部过程相对应的脉冲信号,(,周期可以不相等,),,则此时即为计数。,4,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,定时和计数的实现方法,软件法:,利用一段延时子程序来实现定时操作,特点,无需太多的硬设备,控制比较方便,但在定时期间,,CPU,不能从事其它工作,降低了机器的利用率。,硬件法:,专门设计一套电路用以实现定时与计数,特点是需要花费一定硬设备,而且当电路制成之后,定时值及计数范围不能改变。,软、硬件结合法:,即设计一种专门的具有可编程特性的芯片,来控制定时和计数的操作,而这些芯片,具有中断控制能力,定时、计数到时能产生中断请求信号,因而定时期间不影响,CPU,的正常工作。,5,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,可编程定时器,/,计数器基本工作原理,CPU,可访问的寄存器:控制寄存器、,CR、OL;,CPU,不可访问的寄存器:,CE,CR:,16,位,存放计数初值,可通过程序来设定。,控制逻辑:根据外部送来的控制命令,输出相应信号。,控制寄存器,控,制,逻,辑,CRH CRL,CEH CEL,OLH OLL,计数初值寄存器,CR,计数执行单元,CE,计数输出锁存器,OL,6,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,可编程定时器,/,计数器基本工作原理,CE:,16位减1计数器,它的初值便是计数初值寄存器的内容,它只对,CLK,脉冲计数。一旦计数器被启动后,每出现一个,CLK,脉冲,计数执行单元中的计数值减1,当减为零时,通道,OUT,输出指示信号,表明,CE,已为零。,控制寄存器,控,制,逻,辑,CRH CRL,CEH CEL,OLH OLL,计数初值寄存器,CR,计数执行单元,CE,计数输出锁存器,OL,7,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,可编程定时器,/,计数器基本工作原理,OL:,通常跟随计数,CE,的内容而变化,当接收到,CPU,发来的锁存命令时,就锁定当前的计数值而不跟随,CE,变化,直到,CPU,从中读取锁存值后,才恢复到跟随,CE,变化的状态,从而避免了,CPU,直接读,CE,时干扰计数工作的可能。,控制寄存器:,存放,CPU,送来的控制字,,用来控制计数器,/,定时器的工作方式,就是控制,CLK,脉冲和,GATE,门控信号适当配合来产生,OUT,端的输出信号的形状。,控制寄存器,控,制,逻,辑,CRH CRL,CEH CEL,OLH OLL,计数初值寄存器,CR,计数执行单元,CE,计数输出锁存器,OL,8,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,可编程定时器,/,计数器基本工作原理,GATE,:,控制输入端,它有多种控制作用,如允许/禁止计数、启动/停止计数等。,CLK:,脉冲信号,减1计数的触发。,OUT:,输出信号,计数/定时完成时,用一定电平或脉冲表示。,控制寄存器,控,制,逻,辑,CRH CRL,CEH CEL,OLH OLL,计数初值寄存器,CR,计数执行单元,CE,计数输出锁存器,OL,9,第九章:可编程的定时器,/,计数器,8253,定时器,/,计数器概述,可编程的定时器,/,计数器,8253,10,第九章:可编程的定时器,/,计数器,82538253,可编程定时器,/,计数器,8253,Intel8253,是,8086,微机系统常用的定时,/,计数器芯片,它具有定时与计数两大功能。,每个,8253,芯片有,3,个独立的,16,位计数器通道;,每个计数器通道都可以按照二进制或二,十进制,(BCD,码,),计数;,每个计数器的计数速率可以高达,2MHz,;,每个通道有,6,种工作方式,可以由程序设定和改变;,所有的输入、输出电平都与,TTL,兼容。,11,第九章:可编程的定时器,/,计数器,82538253,8253,的内部结构,12,第九章:可编程的定时器,/,计数器,82538253,8253,的内部结构,数据总线缓冲器:,从总线接收或发送数据,写入控制字,读取计数值的通道。,读写逻辑:,接受来自总线的各种控制信号,产生内部控制命令,。,控制字寄存器,(,只写,),:,8位,存放,CPU,送来的控制字。,计数器,(,02,),:,3个16位的定时/计数器。3套相同且相互独立的结构,每套内部有4个寄存器。,控制寄存器:,8位,存放各自的控制字,初始化时写入控制字寄存器的内容。,计数初值寄存器:,16位,存放计数初值,初始化时写入。,减1计数寄存器:,16位减1计数器,计数初值由预置寄存器送来,每输入一个计数脉冲,减1,减到0时输出计数结束信号。,输出锁存器:,当接收到,CPU,读命令时,锁存当前计数值不跟随计数器变化。,13,第九章:可编程的定时器,/,计数器,82538253,8253,的引脚功能,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,CLK,0,OUT,0,GATE,0,GND,OUT,1,GATE,1,CLK,1,GATE,2,CLK,2,A,0,A,1,OUT,2,WR,RD,CS,V,CC,8253,PIT,24,23,22,21,20,19,18,17,16,15,14,13,1,2,3,4,5,6,7,8,9,10,11,12,14,第九章:可编程的定时器,/,计数器,82538253,8253,的引脚功能,(1)与系统总线连接的引脚,D7D0:,数据线,双向三态,接数据总线;,CS#:,片选输入,有效时选中芯片,接译码器;,RD#:,读出计数值,接,CB,的读信号;,WR#:,写入命令或初值,接,CB,的写信号;,A1,A0:,地址输入,接,AB,的任两位,,用于选择内部四个端口之一。,IOW,IOR,片选信号,DB,D7-D0,8253,A1,A0,WR,RD,CS,计数器2,计数器1,计数器0,CLK0,GATE0,OUT0,CLK1,GATE1,OUT1,CLK1,GATE1,OUT1,A1,A0,A1 A0,选 择,0 0 计数器0,0 1 计数器1,1 0 计数器2,1 1 控制寄存器,15,第九章:可编程的定时器,/,计数器,82538253,8253,的引脚功能,0 1 0 0 0,0 1 0 0 1,0 1 0 1 0,0 1 0 1 1,0 0 1 0 0,0 0 1 0 1,0 0 1 1 0,功 能,对计数器0设置计数初值,CS,RD,A,1,A,0,WR,对计数器1设置计数初值,对计数器2设置计数初值,设置控制字,从计数器0读出计数值,从计数器1读出计数值,从计数器2读出计数值,16,第九章:可编程的定时器,/,计数器,82538253,8253,的引脚功能,(2)与计数通道连接的引脚的主要引线,CLK,n,:,时钟脉冲,输入,计数器的定时基准,用于输入定时基准脉冲或计数脉冲。,GATE,n,:,门控信号,输入,控制计数器的启停。,OUT,n,:,计数器输出信号,当计数器完成计数时,输出相应信号。不同工作方式下产生不同波形。,(,n=02),IOW,IOR,片选信号,DB,D7-D0,8253,A1,A0,WR,RD,CS,计数器2,计数器1,计数器0,CLK0,GATE0,OUT0,CLK1,GATE1,OUT1,CLK1,GATE1,OUT1,A1,A0,17,第九章:可编程的定时器,/,计数器,82538253,8253,的引脚功能,CLK,GATE,OUT,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,高位地址,A15-A2,8253,8253占用4个接口地址:,计数器,0,计数器,1,计数器,2,控制寄存器,(,决定,8253,的,I/O,地址,),共三组,接外设,18,第九章:可编程的定时器,/,计数器,82538253,8253,计数器的启动方式,软件启动:,CPU,对指定计数器编程后自动启动计数,,写入计数初值后的第1个,CLK,脉冲的下降沿开始计数,要求,GATE,保持高电平,(GATE,为低禁止计数,),。,硬件启动:,CPU,对指定计数器编程后并不马上开始计数,而是在门控信号,GATE,的上升沿触发下,才开始计数。,19,第九章:可编程的定时器,/,计数器,82538253,8253,的工作方式,方式0计数结束中断,方式1硬件可重触发的单稳态,方式2速率发生器,方式3方波发生器,方式4软件触发选通,方式5硬件触发选通,20,第九章:可编程的定时器,/,计数器,82538253,8253,的工作方式,方式,0,计数结束中断:,典型的事件计数用法。软件启动,不自动重复计数。装入初值后,OUT,端变低电平,计数结束,OUT,输出高电平。(可作为中断请求信号),GATE,OUT,CLK,0,3,1,2,4,4,方式0,WR,21,第九章:可编程的定时器,/,计数器,82538253,8253,的工作方式,方式,0,计数过程由软件启动,可以用写入计数初值的时刻来控制启动计数器的时刻。,GATE,起开放/禁止计数作用,计数过程中,应保持,高电平,。,每写入一次初值计数一个周期,然后停止计数。,OUT,端输出是一个约(,N+1)T,CLK,宽度的单个负脉冲。,OUT,变为高电平时,可作为中断请求信号。,计数过程中可随时修改初值重新开始计数。,22,第九章:可编程的定时器,/,计数器,82538253,8253,的工作方式,方式,1,硬件可触发单稳态方式:,硬件启动,不自动重复计数。装入初值后,OUT,端变高电平,计数开始,OUT,端变为低电平,计数结束后又变高。,GATE,OUT,CLK,0,3,1,2,4,4,方式1,WR,23,第九章:可编程的定时器,/,计数器,82538253,8253,的工作方式,方式,1,门控信号,GATE,端的上跳变触发计数,可重复触发。,OUT,输出可看作单稳态负脉冲,若下一次,GATE,上升沿提前到达,则,OUT,端负脉冲拉宽为两次计数过程之和。,计数过程中写入新初值不影响本次计数。,可通过改变计数初值来产生不同输出宽度的负脉冲。,24,第九章:可编程的定时器,/,计数器,82538253,8253,的工作方式,方式,2,速率发生器:,OUT,产生周期性定时信号。软、硬件启动,自动重复计数。装入初值后,OUT,端变高电平,计数到最后一个,CLK,时,OUT,输出负脉冲,并连续重复此过程。,0,3,1,2,4,GATE,OUT,CLK,4,方式2,0,3,1,2,4,0,3,1,2,4,0,3,1,2,4,WR,25,第九章:可编程的定时器,/,计数器,82538253,8253,的工作方式,方式,2,GATE,为计数的控制信号:,GATE,变低计数停止,再变高时的下一个,CLK,下降沿,从初值开始重新计数。,每个计数周期结束时(减到1时),,OUT,端输出一个,
展开阅读全文