《第九章定时与计数电路精选文档.ppt》由会员分享,可在线阅读,更多相关《第九章定时与计数电路精选文档.ppt(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第九章定时与计数电路第九章定时与计数电路1本讲稿第一页,共四十页学习目的学习目的 通过对本章的学习,您应该能够达到下列要求:n了解定时基本概念了解定时基本概念n熟悉可编程计数器熟悉可编程计数器/定时器定时器8253的外部特性的外部特性n熟悉可编程计数器熟悉可编程计数器/定时器定时器8253工作模式工作模式n熟悉可编程计数器熟悉可编程计数器/定时器定时器8253初始化初始化本讲稿第二页,共四十页n8253的外部特性的外部特性n8253工作模式工作模式n8253初始化初始化重重 点点本讲稿第三页,共四十页一、定时与计数一、定时与计数 定时中断、定时检测、定时扫描,对外部事件定时中断、定时检测、定时
2、扫描,对外部事件计数计数二二.微机中的定时方法微机中的定时方法q软件定时延迟子程序q硬件定时用计数器/定时器82539.1 定时基本概念定时基本概念本讲稿第四页,共四十页例例:软件定时的例子软件定时的例子:编写一个软件定时程序编写一个软件定时程序,要求定时要求定时20ms.n假设假设:8086的时钟的时钟=8MHz,一个时钟周期一个时钟周期T=1/8MHz=0.125usn延时延时20ms,执行执行PUSHF,POPF指令指令:需要循环次数:需要循环次数:N=20000/(12+14+17)*0.125 =37209参考程序:参考程序:MOV CX,37209PUSHF ;时钟数:14TPOP
3、F ;时钟数:12TLOOP ;时钟数:179.1 定时基本概念定时基本概念本讲稿第五页,共四十页8253外部特性与内部编程结构q计数器/定时器8253特点 三个通道,可单独使用q片内寻址 A1 A0=00、01、10、11 对应:通道0、1、2和控制口地址q工作方式:6种PIT(Programmable Interval Timer)PIT(Programmable Interval Timer)9.2 可编程计数器可编程计数器8253本讲稿第六页,共四十页9.2 可编程计数器可编程计数器8253本讲稿第七页,共四十页9.2 可编程计数器可编程计数器8253连接连接系统端的系统端的主要引线:
4、主要引线:nD7D0nCSnRDnWRnA1,A0 q用于选择四个编址部件之一引线结构引线结构A1 A0 选选 择择0 0 计数通道计数通道00 1 计数通道计数通道11 0 计数通道计数通道21 1 控制寄存器控制寄存器本讲稿第八页,共四十页9.2 可编程计数器可编程计数器8253计数通道计数通道的主要引线(每通道均相同):的主要引线(每通道均相同):nCLKn 时钟脉冲输入,计数器的计时基准。时钟脉冲输入,计数器的计时基准。nGATEn 门控信号输入,控制计数器的启停。门控信号输入,控制计数器的启停。nOUTn 计数器输出信号,不同工作方式下计数器输出信号,不同工作方式下 产生不同波形产生
5、不同波形。(n=02)本讲稿第九页,共四十页1.外部特性外部特性n与与CPU相连的信号相连的信号:数据线数据线D7D0,读读RD,写写WR,片选片选CS,地址线地址线A0,A18253GATE0 OUT0 CLK05V8088CPU1KHzD078253运行原理图运行原理图译码译码地址地址M/IOCSWRRDA0A1A0A1WRRD9.2 可编程计数器可编程计数器8253本讲稿第十页,共四十页1).数据总线缓冲器数据总线缓冲器n 往计数器设置计数初值;往计数器设置计数初值;n 从计数器读取计数值;从计数器读取计数值;n 往控制寄存器设置控制字。往控制寄存器设置控制字。2).读读/写逻辑电路写逻
6、辑电路n A1 A0:端口选择:端口选择n 0 0:通道:通道0(0号计数器)号计数器)n 0 1:通道:通道1(1号计数器)号计数器)n 1 0:通道:通道2(2号计数器)号计数器)n 1 1:控制字寄存器:控制字寄存器9.2 可编程计数器可编程计数器8253本讲稿第十一页,共四十页3).控制命令寄存器控制命令寄存器(8位位)4).计数器计数器:三个独立通道三个独立通道:计数器计数器0,计数器计数器1,计数器计数器2每个通道包含每个通道包含:n 计数初值寄存器计数初值寄存器(16位位)n 减一寄存器减一寄存器(16位位)n 当前计数初值锁存器当前计数初值锁存器(16位位)9.2 可编程计数器
7、可编程计数器8253本讲稿第十二页,共四十页思考题:思考题:n8253每个计数通道与外设接口有哪些信号线,每个计数通道与外设接口有哪些信号线,每个信号的用途是什么?每个信号的用途是什么?9.2 可编程计数器可编程计数器8253本讲稿第十三页,共四十页 1)门脉冲控制时钟输入;)门脉冲控制时钟输入;2)用门脉冲来重新启动计数;)用门脉冲来重新启动计数;3)用门脉冲停止计数;)用门脉冲停止计数;4)单一计数;)单一计数;5)循环计数)循环计数.计数器计数器/定时器的工作特点定时器的工作特点9.2 可编程计数器可编程计数器8253本讲稿第十四页,共四十页3.计数初值计数初值q计数初值n =时钟频率f
8、c/输出频率fout =定时时间Tout/时钟脉冲周期Tc4.编程命令编程命令q方式命令字q对8253初始化q方式命令字的格式 9.2 可编程计数器可编程计数器8253本讲稿第十五页,共四十页 SC1 SC0 RW1 RW0 M2 M1 M0 BCDM2 M1 M0 模式选择 0 0 0 模式0 0 0 1 模式1 /1 0 模式2/1 1 模式3 1 0 0 模式4 1 0 1 模式50 0-对计数器进行锁存0 1-只读/写低8位字节 1 0-只读/写高8位字节1 1-先读/写低8位字节,再读/写高8位字节.0 0-选计数器00 1-选计数器11 0-选计数器21 1-无意义8253控制字格
9、式控制字格式9.2 可编程计数器可编程计数器8253本讲稿第十六页,共四十页8253初始化方法初始化方法:设置控制字;确定计数初值。设置控制字;确定计数初值。例例:使使2号定时器号定时器,工作在方式工作在方式3,计数初值计数初值=533h,二进制计数二进制计数.试写出试写出8253初始化程序段初始化程序段.8253端口地址端口地址:40H,41H,42H,43HMOV AL,10110110B ;2号定时器号定时器,方式方式3OUT 43H,ALMOV AX,0533H OUT 42H,AL ;2号数据口号数据口 MOV AL,AHOUT 42H,AL9.2 可编程计数器可编程计数器8253本
10、讲稿第十七页,共四十页 8253 8253的工作模式的工作模式n方式方式0计数结束产生中断计数结束产生中断q一次定时或计数,重写初值,启动新一轮的计数 n方式方式1可编程的单脉冲可编程的单脉冲(单稳单稳)触发器触发器 q GATE边沿触发,启动新一轮计数n方式方式2分频器分频器(速度波发生器速度波发生器)q具有计数初值重装能力n方式方式3方波发生器方波发生器q具有计数初值重装能力 n方式方式4软件触发的选通信号发生器软件触发的选通信号发生器q 一次定时,重写初值,启动新一轮的计数 n方式方式5硬件触发的选通信号发生器硬件触发的选通信号发生器q GATE边沿触发新一轮计数9.2 可编程计数器可编
11、程计数器8253本讲稿第十八页,共四十页1.方式方式0计数结束产生中断计数结束产生中断(一次定时或计数一次定时或计数,重写初值重写初值,启动新一轮的计数启动新一轮的计数)本讲稿第十九页,共四十页n方式方式0(计数结束中断)(计数结束中断)qq计数过程中,GATE端应保持高电平。qq每写入一次初值计数一个周期,然后停止计数。qqOUT端输出是一个约(N+1)TCLK宽度的负脉冲。qq计数过程中可随时修改初值重新开始计数。本讲稿第二十页,共四十页例例:使使1号定时器号定时器,工作在方式工作在方式0,计数初值计数初值=0FF5h,二进制计数二进制计数.试试写出写出8253初始化程序段初始化程序段.8
12、253端口地址端口地址:40H,41H,42H,43HnMOV AL,01110000B ;0号定时器号定时器,方方30nOUT 43H,ALnMOV AX,0FF5H nOUT 41H,AL ;1号数据口号数据口 nMOV AL,AHnOUT 41H,AL9.2 可编程计数器可编程计数器8253本讲稿第二十一页,共四十页高2.方式方式1_单脉冲触发器单脉冲触发器(GATE边沿触发边沿触发,启动新一轮计数启动新一轮计数)本讲稿第二十二页,共四十页n方式方式1(单稳态触发器)(单稳态触发器)qq门控信号GATE端的跳变触发计数,可重复触发。qq若下一次GATE上升沿提前到达,则OUT端负脉冲拉宽
13、为两次计数过程之和。qq计数过程中写入新初值不影响本次计数。本讲稿第二十三页,共四十页3.方式方式2-分频器分频器(具有计数具有计数初值重装初值重装能力能力)本讲稿第二十四页,共四十页n方式方式2(频率发生器)(频率发生器)qqGATE为计数的控制信号:GATE变低计数停止,再变高时的下一个CLK下降沿,从初值开始重新计数。qq每个计数周期结束时(减到1时),OUT端输出一个TCLK宽度的负脉冲。qq计数过程自动重复进行。qq计数过程中修改初值不影响本轮计数过程。本讲稿第二十五页,共四十页4.方式方式3-方波发生器方波发生器(具有计数具有计数初值重装初值重装能力能力)本讲稿第二十六页,共四十页
14、n方式方式3(方波发生器)(方波发生器)qqOUT输出方波,前半周期为高,后半周期为低。qq计数过程中修改初值不影响本半轮计数过程。qq其余的与方式2 类似。本讲稿第二十七页,共四十页例例:使使0号定时器号定时器,工作在方式工作在方式3,计数初值计数初值N=1000,二进制计数二进制计数.试写试写出出8253初始化程序段初始化程序段.8253端口地址端口地址:40H,41H,42H,43HMOV AL,10110110B ;2号定时器号定时器,方式方式3OUT 43H,ALMOV AX,1000 OUT 40H,AL ;0号数据口号数据口 MOV AL,AHOUT 40H,AL9.2 可编程计
15、数器可编程计数器8253本讲稿第二十八页,共四十页4.方式方式4-软件触发的选通信号发生器软件触发的选通信号发生器本讲稿第二十九页,共四十页n方式方式4(软件触发选通)(软件触发选通)qq计数过程中,GATE端应保持高电平。qq每写入一次初值,计数一个周期,然后停止计数。qq每个计数周期结束时(减到0时),OUT端输出一个TCLK宽度的负脉冲。qq计数过程中修改初值不影响本轮计数过程。本讲稿第三十页,共四十页5.方式方式5-硬件触发的选通信号发生器硬件触发的选通信号发生器本讲稿第三十一页,共四十页n方式方式5(硬件触发选通)(硬件触发选通)qq写入初值时,GATE端应保持低电平。qqGATE每
16、出现一次正脉冲,计数一个周期,然后停止计数。qq每个计数周期结束时(减到0时),OUT端输出一个TCLK宽度的负脉冲。qq计数过程中修改初值不影响本轮计数过程。本讲稿第三十二页,共四十页思考题:思考题:n8253有几种工作方式?有几种工作方式?n什么是软件触发?什么是硬件触发?什么是软件触发?什么是硬件触发?n可重装初值的工作方式是哪些?可重装初值的工作方式是哪些?9.2 可编程计数器可编程计数器8253本讲稿第三十三页,共四十页82538253初始化方法初始化方法n控制字控制字n计数初值计数初值:已知已知:CLK 的频率的频率fc与定时的时间与定时的时间t:计数初值计数初值:n=fclk t
17、 例例:设:设8253:fc=1MHZ,最大计数初值:,最大计数初值:N=65536 一个定时器最大定时时间:一个定时器最大定时时间:Tmax=N/fc=65536/106=0.065536s9.3 8253应用举例应用举例本讲稿第三十四页,共四十页例例:设定时器设定时器0、定时器、定时器1工作于方式工作于方式2,外部提供一个时钟,外部提供一个时钟,频率频率f=2MHZ。要求定时器。要求定时器1每每5ms产生一个脉冲,定时器产生一个脉冲,定时器0每每5s产生一个脉冲。产生一个脉冲。1).一个定时器的最大定时时间:一个定时器的最大定时时间:65536/(2*106)=0.032768 s=32.
18、768ms2).将定时器将定时器1的的CLK1接接2MHZ时钟,计数初值:时钟,计数初值:3).将定时器将定时器1的的OUT1端接到定时器端接到定时器0的的CLK0端端,定时器定时器0的计数的计数初值初值:9.3 8253应用举例应用举例本讲稿第三十五页,共四十页地址地址译码译码CPUD7D0AB8253两个定时器串连使用9.3 8253应用举例应用举例本讲稿第三十六页,共四十页n8253初始化程序:MOV AL,00110100B ;0 0号定时器号定时器,方式方式2 2OUT 43H,ALMOV AX,1000OUT 40H,ALMOV AL,AHOUT 40H,AL MOV AL,011
19、10100B ;1号定时器号定时器,方式方式2OUT 43H,ALMOV AX,10000OUT 41H,ALMOV AL,AHOUT 41H,AL9.3 8253应用举例应用举例本讲稿第三十七页,共四十页时钟原理时钟原理82538259GATE0OUT0CLK05V8086IR01.1931816MHzINTINTRINTAD07D078号中断号中断图图2 时钟运行原理图时钟运行原理图9.3 8253应用举例应用举例本讲稿第三十八页,共四十页思考题:思考题:如何读出当前计数值?本讲稿第三十九页,共四十页n n在计数过程中读计数值在计数过程中读计数值qq先锁存当前计数值,再用两条输入指令将16位计数值读出。本讲稿第四十页,共四十页