文档详情

MCS-51单片机的定时计数器.ppt

发布:2018-01-17约7.77千字共34页下载文档
文本预览下载声明
MCS-51单片机的定时/计数器 复 习 1、SFR使用的注意事项? 字节地址、位地址;位定义;区分控制位和标志位;标志位的清除。 2、中断的处理过程? 采样;查询;响应;处理;返回。 3、主程序设计及结构框架? 中断子程序设计及结构框架? 4、MCS-51中断源有哪些? 第6章 MCS-51单片机的 定时/计数器 6.1 定时器的定时与计数功能 6.2 定时器的有关特殊功能寄存器 6.3 定时器的四种工作方式 6.4 定时器的应用 6.1 定时器的定时与计数功能 1 定时器的结构 2 定时器的计数功能 3 定时器的定时功能 1 定时器的结构 定时器的实质是16位加1计数器 1 定时器的结构 2 定时器的计数功能 3 定时器的定时功能 6.2 定时器的有关寄存器 6.2.1 TCON定时器控制/状态寄存器 1)启动控制位TR0、TR1 =0,停止定时器工作;=1,启动定时器工作 例:启动T0: SETB TR0 停止T0: CLR TR0 6.2.2 TMOD定时器方式寄存器(89H) 6.2.3 定时器的计数数据寄存器 TH1 TL1、TH0 TL0 8DH 8CH、8BH 8AH 6.3 定时器的四种工作方式 6.4 定时器的应用 1、定时器的初始化编程 2、定时器的溢出处理编程格式 3、定时器的应用举例 1、定时器初始化编程 .计算时间常数X(计算初值) 计数功能:X= 2n -计数值N n:13/16/8 定时功能:X= 2n - t/T t:定时时间?s 、T:机器周期?s 2、 溢出处理编程格式及初值恢复方式(自动重装/软件重装) 1)查询方式:先查询定时器溢出标志,再进行溢出处理。 … ;定时器初始化 WAIT:JBC TFx,PT ;检测溢出标志 SJMP WAIT PT: MOV THx,#XH ;软件恢复初值,重装时间常数 MOV TLx,#XL … ;溢出处理 SJMP WAIT 3、定时器的应用举例 【例6-2、3】 :设fosc=12MHz。由P1.0输出周期为2ms的等宽度连续方波,使用T1的方式0、1。 (2)中断方式 【例6-4】用T0以工作方式2计数,每计100次进行累加器加1操作。 【例6-5】用T0以工作方式2产生5kHz的连续方波,并由P1.0输出。设fosc=6MHz,查询方式。 【例6-7】用单片机的定时器设计一个工频计,并用二极管以二进制形式显示所测频率。设fosc=6MHz 门控方式测量正脉冲宽度 2)设脉宽大于65.5ms,中断方式记录TH1TL1溢出中断次数。 MCS-51定时/计数器 小结 1、定时/计数器的结构? 2、定时/计数器的四种工作方式? 3、定时/计数器的初始化编程? 4、定时/计数器的溢出处理方式? 作业:P112 一、二、三 计算脉宽的子程序的计算式如下: 脉宽t = (R4 ×216 + R3 R2 ) ×T (T为机器周期) ORG 0000H AJMP MAIN ORG 001BH INC R4 ;记录T1溢出次数 RETI ORG 0100H MAIN:MOV R4,#0 MOV SP,#60H MOV TMOD,#90H MOV TL1,#00H MOV TH1,#00H SETB EA SETB ET1 ;开T1中断 WAIT1: JB P3.3,WAIT1 SETB TR1 WAIT2:JNB P3.3,WAIT2;等待正脉冲到来 WAIT3:JB P3.3,WAIT3;等待正脉冲结束 CLR TR1 ;关闭T1 MOV IE,#00 ;关闭中断 MOV R2,TL1 ;读出T1 MOV R3,TH1 LCALL PPS ;计算脉宽 HERE:SJMP HERE ;其他任务 PPS: … ;计算脉宽子程序 定时/计数器用于外部中断扩展 扩展方法是,将定时/计数器设置为计数器方式,计数初值设定为满程FFH ,将待扩展的外部中断源接到定时/计数器的外部计数引脚。从该引脚输入一个下降沿信号,计数器加1后便产生定时/计数器溢出中断。 例如,利用T0扩展一个外部中断源。将T0设置为计数器方式,按方式2工作,TH0、TL0的初值均为0FFH,T0允许中断,CPU开放中断。其初始化程序如下: MOV TMOD,#06H ;置T0为计数器方式2 MOV TL0,#0FFH ;置计数初值 MOV TH0,#0FFH SE
显示全部
相似文档