(精品)第5章_定时器09.ppt





《(精品)第5章_定时器09.ppt》由会员分享,可在线阅读,更多相关《(精品)第5章_定时器09.ppt(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5 5章章 定时/计数器 教学目的:了解80C51系列单片机内部定时器/计数器、串行口和中断系统的结构与工作原理;能够对他们编程、应用。l教学重点:1.定时/计数器的工作原理;l 2.定时/计数器的控制方法。l教学难点:1.定时/计数器2的工作方式;2.定时/计数器的应用。5.1定时定时/计数器计数器T0T0、T1T1概述概述l5.1.1 定时定时/计数器计数器T0T0、T1T1的结构的结构 l 图5-1 80C51定时器/计数器T0、T1原理结构框图 80C51单片机内部有两个16位的可编程定时计数器 T0、T1,其组成如图61。可编程是指其功能如工作方式、定时时间、量程、启动方式等均可
2、由指令来确定和改变。有6个8位寄存器用于T0、T1的控制与管理,其访问地址依次为8AH8DH,每个寄存器均可单独访问。16位的T0、T1寄存器是用于存放定时或计数初值与当前值的,两个特殊功能寄存器 TCON和TMOD 是用于管理与控制定时计数器 工作的。5.1.2 5.1.2 5.1.2 5.1.2 定时定时定时定时/计数器的原理计数器的原理计数器的原理计数器的原理l 16位的定时计数器实质上是一个加1计数器,其控制电路受软件控制、切换。通过软件可以设置为4种工作方式(详见5.3节),每种方式都可以用作定时或者计数。不同的工作方式,计数器长度分别为:16位、13位和8位。当选择定时器工作方式时
3、,对片内振荡器的12分频信号计数,实现定时;当选择计数器工作方式时,对引脚Ti端的事件计数。当计数溢出时,标志位TFi置位,并可以请求中断。5.2 定时定时/计数器的控制方法计数器的控制方法l 5.2.1 定时计数器寄存器 1)工作方式寄存器 TMOD:设置定时器/计数器的工作方式及控制模式,TMOD在SFR的字节地址为89H。M1 M0 工作方式 功能描述 0 0方式0 13位计数器 0 1方式1 16位计数器1 0方式2自动再装入8位计数器1 1方式3 定 时 器 0:分 成 两 个 8位 计 数 器定时器1:只能工作在方式0、1、2 TF1TR1TF0TR0IE1IT1IE0IE0 l控
4、制寄存器TCON:控制定时器的启、停和定时器的溢出标志。TCON在SFR的字节地址为88H,可位寻址。l2)定时/计数器控制寄存器TCON 位7 TF1定时器1溢出标志。位6 TR1定时器1运行控制位。位5 TF0定时器0溢出标志。位4 TR0定时器0运行控制位。位3 IE1外部中断1请求标志。位2 IT1外部中断1触发方式选择位。位1 IE0外部中断0请求标志。位0 IT0外部中断0触发方式选择位。l5.2.2 定时/计数器的初始化与启动 l初始化步骤一般如下:l1)确定工作方式对TMOD赋值。l2)预置定时或计数的初值可直接将初值写入TH0、TL0或TH1、TL1。l3)根据需要开放定时/
5、计数器的中断直接对IE寄存器的定时器中断位赋值。l在对T0和T1初始化后,即可准备启动定时/计数器工作。5.2.3 5.2.3 定时定时/计数器初值的确定方法计数器初值的确定方法l现假设最大计数值为M,那么各方式下的M值如下:l方式0:M2138192l方式1:M21665536l方式2:M28256l方式3:定时器0分成两个8位计数器,所以两个M均为256。l因为定时/计数器是做“加1”计数,并在计满溢出时产生中断,因此初值X可以这样计算:l X M 计数值l举例说明,如果 80C51时钟频率为6MHz,要求产生1ms的定时。则初值 XM计数值 6553650065036FE0CH。l通过对
6、M1、M0位的设置,T0可选择4种工作方式,T1可选择3种工作方式。本节将介绍这4种工作方式的结构、特点及工作过程。5 53 3 定时器定时器T0T0、T1T1的工作方式的工作方式 l方式0和方式1:结构和工作原理基基本本相相同同,只只是是方式0 为13位计数器方式,方式1 为16位计数器方式。l 图5-2 T0(或T1)方式1结构方式2:计数常数可自动再装入的8位计数器方式。l 图5-3 T0(或Tl)方式2结构l方式3:T1作波特率发生器,T0可以构成两个独立的计数器。l 图5-4 T0方式3结构(a)T1方式1(或方式0)(b)T1方式2 图5-5 T0方式3下的T1结构l定时器/计数器
7、的复位状态:工作方式0、选择内部启动、计数器停止工作、溢出中断标志清零。l定时器/计数器的初始化:对TMOD赋值确定工作方式;预置定时或计数的初值;根据需要开放定时器/计数器的中断;启动定时/计数器工作。计数器初值最大计数值 要求的计数值 定时时间=(最大计数值 计数器初值)机器周期l计数的“飞读”:解决计数器工作过程中,正确读取计数值的问题,避免由于低位计数器的溢出而导致读数的粗大误差。以定时器T0为例:RP:MOV A,TH0 ;读TH0 MOV R0,TL0 ;读TL0 CJNE A,TH0,RP ;比较两次读得的TH0,不等则重读 MOV R1,A RET例1、在P1.1端口输出周期为
8、2ms的方波,晶振fOSC6MHz。解:采用T0的定时功能,对P1.1端口每隔1ms取反一次即可得到周期为2ms方波。定时器的初始化:lTMOD的设定:工作方式1(M1M0=01)T0为定时器(C/T=0),内部TR0控制启动(GATE=0)所以 TMOD=01l计数器初值计算:定时时间=(最大计数值 计数器初值)机器周期即:1000 s=(65536计数器初值)1261s 得:计数器初值=65036=FE0CH5 54 4 定时器定时器T0T0、T1T1应用举例应用举例 采用查询方式的源程序:ORG 2000H MOV TMOD,#01H MOV TL0,0CH ;给TL0置初值 MOVTH
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 定时器 09

限制150内