第一课微型计算机原理及其应用第九章计数器定时器ppt课件.ppt
《第一课微型计算机原理及其应用第九章计数器定时器ppt课件.ppt》由会员分享,可在线阅读,更多相关《第一课微型计算机原理及其应用第九章计数器定时器ppt课件.ppt(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、定时信号和计数器计算系统中经常用到定时信号:动态RAM刷新、系统的时间和日历以及定时检测和实时控制系统中等都需要定时信号。计数器是对各种脉冲信号进行计数,而定时器则是对时钟信号进行计数!实现定时功能主要有三种方法:1、软件定时 2、不可编程的硬件定时 3、可编程的硬件定时1软件定时(也称软件延时)定时时间由软件编程(循环执行某段程序)来控制。该方法简单、费用低;但CPU的利用率低。不可编程的硬件定时 定时时间由不可编程器件和外围电路控制,通过改变电路参数,可在一定的范围内改变定时时间,定时精度不高。如:555芯片。可编程的硬件定时 定时时间和范围是通过软件对可编程器件进行编程控制;由CPU的时
2、钟信号提供时间基准,定时精确。与CPU并行工作,应用广泛,如8253,8254。29.1 可编程计数器/定时器的工作原理定时器和计数器 定时器:当设置好定时常数后,在时钟信号作用下,进行定时的减“1”计数,定时时间到(减“1”计数回零)自动重新计数,就从输出端输出周期均匀、频率恒定的脉冲信号。定时器强调的是精确的时间,其应用包括:1.一天24小时的计时,称为日时钟。2.在监测系统中,对被测点的定时取样。3.在键盘去抖中,一般延迟一段时间,再读。4.在微机控制系统中,控制某工序定时启动。3计数器:当设置好计数常数后,在时钟信号(或外接脉冲信号)的作用下,进行减“1”计数,计数次数到(减1计数回零
3、),从输出端输出一个脉冲信号。计数器器强调的是脉冲的数目,应用包括:1.对零件和产品的计数;2.对大桥和高速公路上车流量的统计等等。49.2 8253/8254的编程结构和外部信号Intel 8253/8254是一种可编程的计数器/定时器芯片,采用NMOS工艺制成。8253/8254的引脚与功能完全相同,两者的区别在于:8254的频率高于8253,且只有8254有状态寄存器。8253内部具有3个独立的16位计数器,分别称为计数器0、计数器1和计数器2;通过编程,每个计数器均有6种工作方式,并且都可以按2进制或10进制2种格式进行计数;可用作可编程方波频率产生器、分频器、程控单脉冲发生器等。58
4、253的内部结构与引脚信号6 8253与CPU的接口 8 位数据线:D0 D7 寻址控制线:A0、A0、/CS 读写控制线:/RD、/WR 8253与外设的接口三个独立的16位计数器/定时器 时钟输入:CLK 输入门控:GATE 波形输出:OUT 78253的数据总线缓冲器 一个8位双向的三态缓冲器,作为8253和系统数据总线之间的接口;实现CPU与8253之间数据的传送;传送信息包括:u进行初始化编程时的控制字 C向某一计数器通道写入的计数初值 C从某一计数器通道读出的当前计数值 8读读/写控制逻辑写控制逻辑9&CLKGATE16位当前计数值锁存器位当前计数值锁存器16位减一计数器位减一计数
5、器16位计数初值寄存器位计数初值寄存器OUT(减(减1至至0时)时)MSBLSB装入初值装入初值LSBMSB锁存后读锁存后读出当前值出当前值每个计数器内部包含一个每个计数器内部包含一个16位的计数初值寄存器(位的计数初值寄存器(CR)、一个执)、一个执行部件(行部件(CE)及一个输出锁存器()及一个输出锁存器(OL););执行部件执行部件CE从初值寄存器中获得计数初值,便进行减从初值寄存器中获得计数初值,便进行减1计数;计数;输出锁存器的内容随计数执行部件的变化而变化,当有锁存命令输出锁存器的内容随计数执行部件的变化而变化,当有锁存命令来到就锁存当前计数。来到就锁存当前计数。109.3 825
6、3/8254的控制字和状态字1)控制寄存器和控制字模式设置控制字0 0 0 方式0 0 0 1 方式1 X 1 0 方式2 X 1 1 方式3 1 0 0 方式4 1 0 1 方式5选择计数器 00 选择计数器0的控制寄存器 01 选择计数器1的控制寄存器 10 选择计数器2的控制寄存器 11 非法值SC1SC0RW1RW0M2M1M0BCD00 将计数器中CE的数据锁存到输出锁存器OL中 01 选计数器的低8位字节读/写 10 选计数器的高8位字节读/写 11 计数器两次操作(先低位,后高位)读出,写入计数器0:二进制计数 1:十进制计数11读出控制字1.可以一次锁存多个计数器的计数值,也可
7、同时锁存某个计数器的计数值和状态(8254),但不能同时锁存多个计数器的状态;2.先读入的是状态信息,然后是计数值。122)状态寄存器和状态字OUTNULLCOUNTRW1RW2M2M1M0BCDD7(OUT):表示OUT端的状态,=1表示OUT端为高电平,=0表示OUT端为低电平;D6(NULLCOUNT):低电平有效,=0表示初值已经装入,=1表示没有装入;D5-D0:含义与模式设置控制字中的对应位含义相同!139.4 8253/8254的编程命令对计数器设置初值前首先设定模式控制字;计数器初值的设置必须与模式控制字中的规定相符合,即8位/16位;要读取状态字和计数初值,必须先用控制进行锁
8、定,即先写后读!写入命令包含设置控制字、设置计数初值和锁存命令;读出命令包含读取计数器的当前计数值,对于8254还包括状态寄存器中的状态字!148253的初始化过程分两步完成:先写入控制字再写入计数初值 1、写入控制字 由OUT指令向控制字寄存器写入,用来选定计数器通道、规定该计数器的工作方式和计数方式。写入控制字还起到复位的作用,使得输出端OUT变为规定的初始状态,并使计数器清0。152、写入计数初值 由OUT指令向某计数器送一个计数初值,可以是8/16位数据。若是8位数,一条OUT指令即可完成初值的设置;若是16位数,必须用两条OUT指令来完成,且先送低8位数据,后送高8位数据。若计数初值
9、为0时,要分成两次写入。0在在二进制计数方式时,表示65536,BCD计数方式时,表示10000。三个计数器初始化没有先后顺序。16【例】某微机系统中,8253的3个计数器端口地址分别为3F0H、3F2H和3F4H,控制端口地址为3F6H,若要求8253的通道0工作于方式3,计数初值N=1234,BCD方式计数,编写初始化程序。初始化程序段如下:MOV AL,00110111B MOV DX,3F6H OUT DX,AL MOV AL,34H MOV DX,3F0H OUT DX,AL MOV AL,12H OUT DX,AL179.5 8253/8254的工作模式写入控制字后,芯片内部的逻辑
10、控制电路立即复位,输出端OUT进行初始状态;计数器初值在写入以后,要经过一个时钟的上升沿和下降沿,计数执行部件才开始计数;门控信号GATE的触发方式:包括电平触发和边沿触发。181、模式0计数结束产生中断方式(计数器)工作过程:写入控制字,OUT立即变为低;写初值到计数寄存器(CR),若GATE为高电平,下一个时钟脉冲的下降沿将初值装入计数执行部件(CE),才开始减1计数;计数期间,OUT一直为低;当计数结束(计数值为0),OUT变为高,并一直保持到重新装入初值或设置新的工作方式。用途:方式0常用来对外部事件计数,利用OUT由低到高的变化中断请求信号。19CW=10HCLKGATEOUTWRL
11、SB=66543210CRCE CR=620u两种特殊情况:1CW=10HCLKGATEOUT 1 0WRLSB=44322210CRCE CR=40101GATE门控信号的改变21u两种特殊情况:CR=3CW=10HCLKGATEOUTWRLSB=33213210CRCE CR=3LSB=3CRCE中途改变计数初值222、模式1可编程的单稳态触发器(计数器)工作过程:写入控制字,OUT立即变为高,并保持不变。写计数初值N,只有当GATE形成一个上升沿时,才在下一个时钟脉冲的下降沿,将n装入实际计数器,同时OUT由高变为低,开始减1计数;计数期间,OUT一直为低;当计数结束(计数值为0),OU
12、T变为高。用途:输出稳态负脉冲 OUT端输出负脉冲的宽度=时钟脉冲宽度计数值N。23CRCE 12CW=12HCLKGATEWRLSB=330CRCE CR=324NOTE:在计数过程中,GATE为高、低和下降沿,均不影响计数;但若又来一上升沿,则将计数初值重新装入实际计数器并重新开始计数,使负脉冲变长;253、模式2分频器(定时器)工作过程:写控制字,OUT为高。写计数初值,若GATE为高电平,则在下一个时钟脉冲下降沿,将计数初值装入CE,开始减1计数。当计数值减为1时,OUT由高变低,当减为0时OUT又变为高,即OUT输出一个时钟周期的负脉冲;同时,自动将计数初值装入计数执行部件,开始新一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第一 微型计算机 原理 及其 应用 第九 计数器 定时器 ppt 课件
限制150内