




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
10.1概述,10.2可编程定时器/计数器8254,10.38254编程使用,第10章定时器/计数器,10.482380内部定时器,10.1概述,在计算机中经常用到定时信号,例如动态存储器刷新、系统日历计时等。定时方法可以采用软件方式,也可以采用硬件方式。软件定时是设计一个延时子程序,以达到定时的目的。硬件定时是用专门的定时器/计数器来实现,不占用CPU的时间可与CPU并行工作。定时器实质上是一个计数器。早期PC机使用的是8253,以后的PC/AT机使用的是8254。二者的外部引脚与功能基本相同,只是前者允许输入的最高时钟频率是5MHz,后者是10MHz。在以后的一些兼容机中使用MC146818作为定时芯片。现在多使用多功能芯片中包含的定时器。,10.2可编程定时器/计数器8254,8254包含有3个16位计数器,可按二进制或十进制计数,有6种工作方式。,10.2.1内部结构与引脚功能,1.内部结构内部结构如图10-1(a)所示,3个计数器、1个控制寄存器、1个8位数据总线缓冲器以及读/写控制电路。3个计数器各16位,独立工作。每个计数器如图10-2所示,包括1个16位初值寄存器CR、1个减1计数器CE和1个输出锁存器OL。另有控制逻辑电路、控制字寄存器和状态字寄存器。控制字寄存器和状态字寄存器为3个计数器共用。计数器工作时可设定为16位,也可设定为8位。设置计数初值时,16位计数值分两次写入。一旦写入,自动送入减1计数器。当门控输入信号GATE有效时,减1计数器CE按时钟信号CLK减1计数。减为0时,由OUT端输出计数回零信号,在计数过程中,锁存器OL跟随CE的内容。,图10-1,在8254内部设置有4个寄存器,由地址A1A0选择和片选信号CS确定,如表10-1所示。,图10-2,2.引脚信号8254有24个引脚,采用双列直插式封装,其信号分布如图10-1(b)所示,功能如下:D7D0:数据总线,双向,8位,与外部数据总线连接。WR:写信号输入,低电平有效。RD:读信号,输入,低电平有效。CS:片选信号,输入,低电平有效。A1A0:地址信号,输入,用于选择内部寄存器。CLK2CLK0:3个计数器计数信号输入。OUT2OUT0:3个计数器计数回零输出,高电平有效。GATE2GATE0:3个计数器外部门控信号输入端,高电平或上升沿有效。VCC:5V电源。GND:地。,10.2.2工作方式,8254有6种工作方式,可通过编程选择。1.方式0-计数结束产生中断(1)写入控制字后OUT输出低电平,并且一直保持。计数回0时,OUT输出高电平,又一直保持,直到写入新的计数初值时再输出低电平。其时序如图10-3所示。,图10-3,(2)GATE1,允许计数;GATE0,禁止计数。如果在计数过程中修改计数初值,则在下一时钟脉冲2.方式1-可重复触发的单稳态触发器新写入的计数初值送入减1计数器,然后按新值计数。(1)写入控制字后OUT输出高电平,写入计数初值后必须由GATE的上升沿触发计数。计数开始OUT变为低电平,直到计数回0时再输出高电平。若要再次计数,必须用GATE上升沿重新触发。方式1时序如图10-4所示。,图10-4,(2)在计数过程中写入新的计数初值,当前计数状态不受影响。若有GATE上升沿触发,则按新的计数初值重新计数,直到计数回0,OUT变为高电平,低电平宽度为两次计数值之和。3.方式2-分频器是一种(n-1):1的分频器工作方式,特点如下:,图10-5,(1)写入控制字后OUT输出高电平,写入初值后的下一时钟送入减1计数器,减1计数。减到1时,OUT输出低电平,维持1个时钟周期后又变为高电平,然后重新减1计数。其时序如图10-5所示。(2)GATE1,允许计数;GATE0,停止计数。4.方式3-方波发生器(1)写入控制字后OUT输出高电平,写入计数初值后的下一时钟送入减1计数器,减1计数。当减1到初值的一半时输出低电平,并继续减1计数。当计数回0时输出高电平,即一个周期。之后,又开始下一个周期的减1计数。其时序如图10-6所示。(2)当计数初值n为偶数时,输出对称方波。当计数初值n为奇数时,高电平的宽度比低电平的宽度多1个时钟周期。,(3)GATE1时,允许计数;GATE0时,停止计数。GATE的上升沿启动重新计数。若在计数过程中写入新的计数初值,则在下一时钟周期按新值计数。5.方式4-软件触发的选通信号发生器,图10-6,(1)写入控制字后OUT输出高电平,写入计数初值后的下一时钟送入减1计数器,减1计数。计数回0时输出低电平,持续1个时钟周期后又变为高电平,即一个负脉冲信号,如图10-7所示。(2)GATE=1时,允许计数;GATE=0时停止计数,输出维持当时的电平。6.方式5-硬件触发的选通信号发生器(1)写入控制字后OUT输出高电平,写入计数初值后,必须在GAET的上升沿送减1计数器,减1计数。计数回0,输出一个时钟周期的低电平,然后回到高,图10-7,电平,即一个负脉冲。由于需要GATE的上升沿触发,故称硬件触发的脉冲发生器,时序如图10-8所示。(2)计数过程中若GATE有上升沿出现,则在下一时钟脉冲计数初值重新送入减1计数器,重新减1计数。(3)计数过程中若写入新的计数初值,而无GATE上升沿触发,当前计数状态不受影响。如果有GATE上升沿触发,则重新按照新的计数初值计数。,图10-8,10.38254编程使用,10.3.1控制字10.3.2编程使用10.3.38254在PC机中的应用,10.3.1控制字,从编程的角度来看,8254控制字有两个。一个设置工作方式;另一个用来设置读回命令,这两个控制字共用一个地址,由其中的标志位区分。1.方式控制字方式控制字一共有8位,用来设置3个计数器的工作方式、计数方式以及计数器的长度,其格式如图10-9所示。由于计数器是减1计数,且先减1,再判断,因此计数初值为0时计数值最大。(2)读回控制字当控制字的最高2位为11时表示读回命令,其格式如图10-10所示,锁存相应信息,即计数值/状态信息锁存。状态字格式如图10-11所示。其中D5-D0是以前写入方式控制字所确定的值。D6表示CR的值是否已装入CE中,若D60,表示已装入,可以读取;若D61,则读取无效。D7表示OUT,图10-9,图10-10,图10-11,10.3.2编程使用,8254的编程主要是设置工作方式,写入计数初值,在计数过程中读取计数值和状态信息。1.写操作写操作主要是写入控制字和计数初值,即初始化。8254有3个计数器,初始化时可以一个一个地进行,也可以先设置3个计数器的工作方式,然后写入各自的计数初值。前者如图10-12,后者如图10-13所示。但是必须先写入方式控制字,再写入计数初值。对于16位计数初值,先写入低字节,再写入高字节。,图10-12单个计数器初始化,图10-13集中写入控制字再写入计数初值,2.读操作读操作有两种方式,一种是直接读,读取计数初值;另一种是先发锁存命令,然后再读,读取当前计数值。在发锁存命令时可以使用读回控制字,也可以使用方式控制字。若用方式控制字,其中D5D400,D7D6用来选择计数器,其余低4位任意。若设控制字端口地址为TIM,计数器1按双字节计数,读取当前计数值的程序如下:MOVDX,TIMMOVAL,01000000BOUTDX,AL;发锁存命令INAL,DX;读取低字节MOVAH,ALINAL,DX;读取高字节XCHGAH,AL、,10.3.38254在PC机中的应用,在PC机中,8254内部的三个计数器分别用于日历计时、动态存储器定时刷新和产生扬声器音频信号,其硬件连接如图10-14所示。3个计数器的定时计数时钟相同,由PCLK二分频产生,频率为1.1931816MHz。片选信号由主机I/O地址译码产生。主机系统分配给定时器端口地址范围为40H-5FH,当I/O地址A9A8A7A6A5=00010时,T/CCS为低电平有效,8254选中,但是实际仅使用了40H-43H。(1)计数器0计数器0选择工作方式3,计数初值为0,由OUT0产生连续方波,其频率为1.1931816MHz/65536=18.2Hz,周期为54.9ms。GATE0接5V,处于常启状态。OUT0直接联接到82C59A中断控制器的IR0,利用方波上升沿发中断请求,,图10-148254在PC机中的应用,用于日历钟计时。在中断服务程序中,时间值保存在BIOS数据区的两个变量TIMER-LO和TIMER-HI中。计数器0初始化程序如下:MOVAL,36H;计数器0双字节,方式3,二进制计数OUT43H,AL;写入控制寄存器MOVAL,0OUT40H,AL;写低字节OUT40H,AL;写高字节,(2)计数器1计数器1用来向主机定时提出动态RAM刷新请求,GATE1接5V,处于常启状态。选择工作方式2,以字节计数,初始化程序如下:MOVAL,54H;计数器1写入低字节,方式2,二进制计数OUT43H,AL;写入控制寄存器MOVAL,18;设置低字节计数值18OUT41H,AL;将18写入计数器1启动工作后,由OUT1产生连续负脉冲,其频率为1.1931816MHz/1866.2878KHz,周期为15.0857s。OUT1连接到D触发器的触发脉冲输入端,而D触发器的数据输入端接+5V,这样可利用负脉冲的上升沿将触发器置1,输出高电平,定时请求DRAM刷新。(3)计数器2,计数器2用来产生扬声器的音频信号。GATE2由TIME2GATE信号控制,选择工作方式3,以双字节计数,初始化程序如下:MOVAL,0B6H;选择计数器2,写双字节,方式3,二进制计数OUT43H,AL;写入控制寄存器MOVAX,533HOUT42H,AL;写入低字节MOVAL,AHOUT42H,AL;写入高字节计数初值为533H,使OUT2输出频率为896(1.1931816MHz/533H)HZ的脉冲信号。TIME2GATE由程序设置,以确定是否启用扬声器。另外,OUT2与SPKDATA相“与”后,经SN75477送扬声器。SPKDATA由程序控制,以确定是否发声报警,SN75477用于音频功率放大。,10.482380内部定时器,10.4.1组成与功能10.4.2在动态存储器刷新中的应用,10.4.1组成与功能,82380中设置有4个16位的可编程定时器,其组成如图10-15所示,功能与8254相同,但是计数时钟信号由82380内部产生。在4个定时器中,定时器0的输出TOUT0与82380的内部中断输入IR8连接,用作实时定时中断请求,定时器1、2、3可作为通用定时器。在过去的一些PC机中,定时器1连接到动态存储器刷新控制器,用于刷新定时;定时器2用于产生扬声器的音频信号或者产生82380内部的IR3中断;定时器3用来产生82380内部的IR0中断。,图10-1582380内部定时器,82380内部定时器有两个控制寄存器,CPU可设置4个定时器的工作方式,也可发读回命令。其中,方式字1和读回控制字1用来设置定时器0、1、2的工作方式和写回。写入控制寄存器1的格式与8254完全相同。方式寄存器2和读回控制字2用来设置定时器3的工作方式和读回,格式如图10-16和10-17所示。方式控制字2的高两位D7D6=00,用来选择定时器3,其他各位的含义与8254方式控制字相同;读回控制字2的D1用来选择定时器3,D3、D2未用,其他各位与8254相同。,图10-16方式控制字格式,图10-17读回控制字格式,为了与早期的PC机兼容,82380内部定时器的I/O端口与8254在PC机中的端口地址保持兼容,如表10-2所示。,10.4.2在动态存储器刷新中的应用,在82380中除了定时器之外,还有8通道DMA控制器。每一个通道包括2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 扫黑除恶宣传课件
- 2025年中招考试常出题目及答案
- 徐绽范猛考研英语阅读理解总结
- 2025年赣州上犹中考试题及答案
- 慕课德育原理课件
- 贵州中考模考试卷及答案
- 盐城招生考试题目及答案
- 急性脑卒中护理课件
- 医院技能培训考试题及答案
- 快递转运安全培训课件
- 胃镜基本知识课件
- NB/T 11636-2024煤矿用芳纶织物芯阻燃输送带
- 2025年专升本艺术概论考试模拟卷(艺术史论重点与艺术史研究方法探讨试题)
- 野外文物看护员管理制度
- 解读学习《住房租赁条例》培训课件(2025年9月15日起施行)
- 公路铣刨机转向桥关键结构疲劳寿命的深度剖析与精准预测
- 民事起诉状要素式(民间借贷纠纷)
- 幼儿园健康预防蚊虫叮咬
- 肺孢子菌肺炎护理查房
- 三级安全教育培训试题(含答案)
- 绿城好房子建设的理念与实践
评论
0/150
提交评论