第10章-定时器/计数器-微机原理课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第10章-定时器/计数器-微机原理课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 10 定时器 计数器 微机 原理 课件
- 资源描述:
-
1、第第10章章 定时定时/计数技术及接口计数技术及接口 10.1 10.1 定时定时/计数技术概述计数技术概述 10.2 10.2 可编程定时器可编程定时器/计数器计数器8253/8254 n10.3 825310.3 8253在微机系统中的应用在微机系统中的应用 10.1 定时定时/计数技术概述计数技术概述 10.1.1 10.1.1 系统的时间基准系统的时间基准 计算机为什么需要时间基准?计算机为什么需要时间基准?第一,计算机系统本身需要一个时间基准,以保证计算机在确定时刻完成规定动作。第二,用计算机构成的测控系统常被要求能提供一些定时和计数的功能等。计算机系统的时间基准:主时钟频率计算机系
2、统的时间基准:主时钟频率(简称主频)1.软件定时软件定时 软件定时:软件定时:让CPU执行一段具有固定延时时间的循环程序来实现的延时。是实现系统定时或延时控制的最简单的方法。优点优点:不需要外加硬件电路且定时精确。缺点缺点:定时时间越长,CPU的开销越大,而且不能响应中断,否则定时就不准确了。10.1.2 系统定时分类系统定时分类系统定时分类系统定时分类n2.硬件定时硬件定时n硬件定时硬件定时由硬件电路来实现的定时n优点优点减轻CPU的负担,使得在定时期间CPU能做其它工作。n 不可编程的硬件定时不可编程的硬件定时555时基电路n缺点:不易修改定时参数,时间长了会老化。n可编程硬件定时可编程硬
3、件定时8253定时/计数器n优点:定时参数和工作方式又可由软件来控制,定时过程不需要CPU干预。10.2 可编程定时器可编程定时器/计数器计数器8253/8254 n10.2.1 8253主要特性主要特性 n 单一正5V电源,NMOS工艺制成。n 片内具有3个独立的16位减法计数器(或称计数通道)。n 计数频率为02MHz。n 两种计数方式:即二进制或BCD方式计数。n 六种工作方式,既可对系统时钟脉冲计数实现定时,又可对外部事件进行计数。n 可由软件或硬件控制开始计数或停止计数。10.2.2 8253 内部结构内部结构 8253 内部结构内部结构n1.数据总线缓冲器:数据总线缓冲器:n数据总
4、线缓冲器是一个三态,双向8位寄存器,用于将8253与系统总线D0D7相连。CPU通过数据总线缓冲器向8253写入数据、命令或从数据总线缓冲器读取数据和状态信息。n 数据缓冲器有三个基本功能:向8253写入确定8253工作方式的命令;向计数寄存器装入初值;读出计数器的初值或当前值。8253 内部结构内部结构n2.读读/写逻辑写逻辑n读/写逻辑由CPU发来的读、写信号和地址信号,选择读出或写入寄存器,并且确定数据传输的方向:是读出还是写入。n3.控制字寄存器控制字寄存器n控制字寄存器接受CPU送来的控制字。这个控制字用来选择计数器及相应的工作方式。控制字寄存器只能写入,不能读出。8253 内部结构
5、内部结构n4.计数器计数器n8253有三个独立的计数通道n每个通道的内部结构完全相同,均由n16位的计数单元(减1计数器)n16位初值寄存器(只写)n16位输出锁存器组成n控制单元控制该计数器的工作方式 控制单元初值寄存器计数单元输出锁存器数据总线CLKOUTGATE图图10.2 计数器的内部逻辑计数器的内部逻辑 8253 内部结构内部结构 计数初值寄存器计数初值寄存器(16位):用于存放计数初值(定时常数、分频系数),最大计数值为65536(64KB)。在初始化时同时一起装入的,计数初值寄存器的计数初值,在计数器计数过程中保持不变。计数单元计数单元(1616位)位):用于进行减1计数操作,每
6、来一个时钟脉冲,它就作减1运算,直至将计数初值减为零。当前计数值锁存器当前计数值锁存器(1616位)位):用于锁存减1计数器的内容,以供读出和查询。8253 内部结构内部结构n初始化时n首先向计数通道装入计数初值,送入计数初值寄存器n然后送到计数单元(减1计数器)。n计数启动后(GATE允许),在时钟脉冲CLK作用下,计数单元进行减1计数,直到计数值减到0,输出OUT时,计数结束。计数初值寄存器的内容在计数过程中保持不变。10.2.3 8253外部特性外部特性 n8253的引脚图的引脚图CSWRRDD7D6D5D4D3D2D1D0CLK0GNDVCCOUT0GATE0A0A1CLK2OUT2G
7、ATE2CLK1GATE1OUT182531234567891011121314151617181920212223248253外部特性外部特性n82538253的引脚分为两部分:的引脚分为两部分:n1.1.与与CPU连接的引脚连接的引脚nD7D0:数据线,双向,三态 n :写信号n :读信号 nA1、A0:地址线,用于寻址8253内部的4个端口n :片选信号 WRRDCSCS RD WR A1 A0 操操 作作 0 1 0 0 0 对计数器 0 设置计数初值 0 1 0 0 1 对计数器 1 设置计数初值 0 1 0 1 0 对计数器 2 设置计数初值 0 1 0 1 1 控制字写入控制寄存
8、器 0 0 1 0 0 从计数器 0 读计数值 0 0 1 0 1 从计数器 1 读计数值 0 0 1 1 0 从计数器 2 读计数值 0 0 1 1 1 无操作,三态 0 1 1 X X 无操作,三态 1 X X X X 未选中 表表10.1 8253端口操作中各信号组合所实现的功能端口操作中各信号组合所实现的功能 8253外部特性外部特性n2.2.与外设的接口引脚与外设的接口引脚 nCLK02:计数时钟,输入。用于输入定时脉冲或计数脉冲信号。nGATE02:门控信号,输入。用于外部控制计数器的启动计数和停止计数的操作。nOUT02:计数输出端。当计数器从初值开始完成计数操作时,OUT引脚上
9、输出相应的信号.10.2.4 8253方式控制字(方式控制字(CW)n8253控制字的格式如右所示:D7D6D5D4D3D2D1D00=二进制二进制1=二二十进制十进制工作方式选择工作方式选择000=方式方式0001=方式方式1X10=方式方式2X11=方式方式3100=方式方式4101=方式方式5通道控制字寻址通道控制字寻址00=通道通道0控制寄存器控制寄存器01=通道通道1控制寄存器控制寄存器10=通道通道2控制寄存器控制寄存器11=不用不用读写操作读写操作00=锁定当前计数值锁定当前计数值01=读读/写计数器低写计数器低8位位10=读写计数器高读写计数器高 8位位11=先读先读/写计数器
10、低写计数器低 8 位位再读再读/写计数器高写计数器高8 8位位 例:选择例:选择2 2号计数器,工作在方式号计数器,工作在方式3 3 ,计数初值为,计数初值为533H533H(2 2个字节),采用二进制计数。其初始化程序段为个字节),采用二进制计数。其初始化程序段为:(设设82538253的端口地址为的端口地址为304304H H307H307H)MOV DX,307H ;命令口;命令口 MOV AL,10110110 B ;2号计数器的初始化命令字号计数器的初始化命令字 OUT DX,AL ;写入命令寄存器;写入命令寄存器 MOV DX,306H ;2号计数器数据口号计数器数据口 MOV A
11、X,533H ;计数初值;计数初值 OUT DX,AL ;选送低字节到;选送低字节到2号计数器号计数器 MOV AL,AH ;取高字节送;取高字节送AL OUT DX,AL ;后送高字节到;后送高字节到2号计数器号计数器方波发生器1 初始化编程举例初始化编程举例2 读当前计数值读当前计数值 在事件计数器的应用中,需要读出计数过程中在事件计数器的应用中,需要读出计数过程中的当前计数值,以便根据这个值做计数判断。的当前计数值,以便根据这个值做计数判断。例:要求读出并检查例:要求读出并检查1 1号计数器的当前计数值是否是全号计数器的当前计数值是否是全“1”1”(假定计数值只有低(假定计数值只有低8
12、8位),其程序段为位),其程序段为 MOV DX,307H ;命令口;命令口 L:MOV AL,01000000B ;1号计数器的锁存命令号计数器的锁存命令 OUT DX,AL ;写入命令寄存器;写入命令寄存器 MOV DX,305H ;1号计数器数据口号计数器数据口 IN AL,DX ;读;读1号计数器的当前计数值号计数器的当前计数值 CMP AL,0FFH ;比较;比较 JNE L ;非全;非全“1”,再读,再读 HLT ;是全;是全“1”,暂停,暂停 10.2.6 8253 初始化编程初始化编程 n初始化编程的具体步骤为:初始化编程的具体步骤为:n1.写入计数器的控制字,规定其工作方式等
13、;n2.写入计数初值。n若规定只写低8位,则写入的为计数值的低8位,高8位自动置0;n若规定只写高8位,则写入的是计数值的高8位,低8位自动置0;n若规定写16位计数值,则分两次写入,先写的必是低8位,后写的必是高8位。例例10.1:n某微机系统中8253的端口地址为40H43H,要求计数器0工作在方式0,计数初值为FFH,按二进制计数;计数器1工作在方式2,计数初值为1000,按BCD码计数。试写出初始化程序段。n解:1按要求找出所用计数器的控制字按要求找出所用计数器的控制字n计数器计数器0的控制字的控制字:选计数器选计数器0 只写低只写低8位位 选工作方式选工作方式0 二进制计数二进制计数
14、n计数器计数器1的控制字:的控制字:选计数器选计数器1 只写高只写高8位位 选工作方式选工作方式2 BCD计数计数 0 0 0 1 0 0 0 0 0 1 1 0 0 1 0 1 例例10.1:例例10.1:n2初始化程序段MOV AL,10H ;写通道0控制字OUT 43H,ALMOV AL,0FFH ;写通道0计数初值OUT 40H,AL MOV AL,65H ;写通道1控制字OUT 43H,AL MOV AL,10H ;写通道1计数初值OUT 41H,AL 例10.2:n设8253端口地址为FFF0HFFF3H,要求计数器2工作在方式5,二进制计数,初值为F03FH。试按上述要求完成82
15、53的初始化。n解:n1 1控制字控制字 选计数器2 写低8位 选工作方式5 二进制计数 再写高8位 1 0 1 1 1 0 1 0 例10.2:2 2初始化程序段初始化程序段MOV DX,0FFF3H ;DX指向控制端口MOV AL,0BAH ;写控制字OUT DX,AL MOV DX,0FFF2H ;DX指向通道2MOV AL,3FH ;写初值低8全OUT DX,ALMOV AL,0F0H ;写初值高8位OUT DX,AL10.2.7 8253工作方式工作方式n8253作为一个可编程的定时/计数器,可以编程选择6种不同的工作方式,不论哪种工作方式,都会遵守下面几条基本原则:n控制字写入计数
16、器时,所有的控制逻辑电路立即复位,输出端OUT进入初始状态(高电平或者低电平)。n初值写入以后,要经过一个时钟上升沿和一个时钟下降沿,计数执行部件才开始计数。8253工作方式工作方式 通常,在时钟脉冲CLK的上升沿,门控信号GATE被采样。对于一种给定的工作方式,门控信号的触发方式有具体规定,即或者用电平触发,或者用边沿触发。方式0、4中,门控信号为电平触发;方式1、5中,门控信号为上升沿触发;方式2、3中,既可用电平触发,也可用上升沿触发。在时钟脉冲的下降沿,计数器作减1计数。0是计数器是计数器所能容纳的最大值所能容纳的最大值,因为用二进制计数时,16位计数器中,0相当于216,用BCD码计
17、数时,0相当于104。8253工作方式工作方式n工作方式及其特点n8253中有三个独立的计数器,每个计数器都可编程选择六种工作方式之一。n区别这六种工作方式主要从三个方面:n其一是他们的输出波形不同;n其二是启动计数器的触发方式不同;n其三是计数过程中门控信号对计数操作的影响不同。1.1.方式方式0 0 -计数结束产生中断计数结束产生中断 图3.4 8253的0方式时序波形n=5n=5CLKOUTWRWRGATEOUTWROUT 543210543210n=998n=443210图图10.4 方式方式0输出波形图输出波形图方式方式0 0方式0有如下3个特点:当向计数器写完计数值后,开始计数,计
18、数一旦开始,输出端OUT就变成低电平,并在计数过程中一直保持低电平,当计数器减到零时,OUT立即变成高电平。门控信号GATE为高电平时,计数器工作;当GATE为低电平时,计数器停止了工作,其计数值保持不变。如果门控信号GATE再次变高时,计数器从中止处继续计数。在计数器工作期间,如果重新写入新的计数值,计数器将按新写入的计数初值重新工作。例例1:使计数器使计数器T T1 1工作在方式工作在方式0 0 ,进行,进行1616位二进制计数,位二进制计数,计数初值的高低字节分别为计数初值的高低字节分别为BYTEHBYTEH和和BYTELBYTEL。(设设82538253的端口地址为的端口地址为3043
展开阅读全文