第十四次课(共2学时)一、授课题目:STC15F2K60S2的定时/计数器(上)二、教学目标和任务:1.掌握STC15F2K60S2单片机定时/计数器(TO/T1)的结构和工作原理;2.掌握STC15F2K60S2单片机定时/计数器(TO/T1)的控制;3.掌握STC15F2K60S2单片机定时/计数器(TO/T1)的工作方式。三、教学重难点:重点:STC15F2K60S2单片机定时/计数器(TO/T1)的结构、工作原理、控制和工作方式。难点:STC15F2K60S2单片机定时/计数器(TO/T1)的结构和工作原理。四、授课过程:回顾:STC15F2K60S2的中断系统中断标志位管理、中断允许管理、中断优先级的管理;利用外部中断0、外部中断1编写程序实现简单的现象。0.引入单片机可选择的定时方式有以下三种:软件定时:时延函数硬件定时:(555时基电路)可编程定时器定时1
1 第十四次课(共 2 学时) 一、授课题目:STC15F2K60S2 的定时/计数器(上) 二、教学目标和任务: 1. 掌握 STC15F2K60S2 单片机定时/计数器(T0/T1)的结 构和工作原理; 2. 掌握 STC15F2K60S2 单片机定时/计数器(T0/T1)的控 制; 3. 掌握 STC15F2K60S2 单片机定时/计数器(T0/T1)的工 作方式。 三、教学重难点: 重点:STC15F2K60S2 单片机定时/计数器(T0/T1)的结构、 工作原理、控制和工作方式。 难点:STC15F2K60S2 单片机定时/计数器(T0/T1)的结构 和工作原理。 四、授课过程: 回顾: STC15F2K60S2 的中断系统中断标志位管理、中断 允许管理、中断优先级的管理;利用外部中断 0、外部中断 1 编写程序实现简单的现象。 0.引入 单片机可选择的定时方式有以下三种: 软件定时:时延函数 硬件定时:(555 时基电路) 可编程定时器定时
本节课将为大家介绍的定时方式为可编程定时器定时:STC15F2K60S2内部有三个16位可编程定时器/计数器(TO、T1、T2)。可以用于:定时、计数、可编程时钟输出。本课程重点讲授TO和T1。1.定时/计数器(TO/TI)的结构和工作原理定时计数器TO和T1的结构如图1所示。sysclk/127, P3.5sysclk/127P3.4≥1AUXRAUXR≥1sysclk/1-4sysclk/1THITHOTLOIL11CPUTCONTMOD图1定时/计数器(TO/T1)的结构讲解要点如下:1)核心电路为十六位加法计数器,由THx,TLx两个8位计数器组成。2)两个定时器/计数器都具有定时器和计数器2种工作模式3)计数器时,TO和T1的计数信号分别来自P3.4和P3.5的负跳变。(T2是P3.0)4)定时器时,频率有两种:时钟脉冲或者时钟脉冲的十二分频。可以通过特殊功能寄存器AUXR的特定位控制。默认为脉冲的十二分频信号。5)当计数器溢出时(16位计数器,计满到65536),引起2
2 本节课将为大家介绍的定时方式为可编程定时器定时; STC15F2K60S2 内部有三个 16 位可编程定时器/计数器(T0、 T1、T2)。可以用于:定时、计数、可编程时钟输出。本课程 重点讲授 T0 和 T1。 1. 定时/计数器(T0/T1)的结构和工作原理 定时计数器 T0 和 T1 的结构如图 1 所示。 图 1 定时/计数器(T0/T1)的结构 讲解要点如下: 1)核心电路为十六位加法计数器,由 THx,TLx 两个 8 位 计数器组成。 2)两个定时器/计数器都具有定时器和计数器 2 种工作模 式 3)计数器时,T0 和 T1 的计数信号分别来自 P3.4 和 P3.5 的负跳变。(T2 是 P3.0) 4)定时器时,频率有两种:时钟脉冲或者时钟脉冲的十 二分频。可以通过特殊功能寄存器 AUXR 的特定位控制。默认 为脉冲的十二分频信号。 5)当计数器溢出时(16 位计数器,计满到 65536),引起
中断,T0、T1、T2对应的中断号分别为1,3,12。思考:16位计数器,共可以满足多少次计数,假设定时模式用12MHz的晶振,一次最长可以计时多久,计时一次多长时间。2.定时/计数器(TO/T1)的管理2.1TCON字节地址88HD7D6D5D4D3D2D1DOIE1IT1IEOTCONTF1TR1TFOTROITO88H(1)TF1、TFO一计数溢出标志位当计数器计数溢出时,该位置“1”。(2)TR1、TRO一计数运行控制位TR1位(或TRO)=1,启动计数器计数的必要条件。TR1位(或TRO)=O,停止计数器计数。该位可由软件置“1”或清“0”2.2工作方式控制寄存器TMODTMOD用于选择定时器/计数器的工作模式和工作方式,字节地址为89H,不能位寻址,格式如下。DSD4D7D6D3D2DIDOC/TMIC/TMITMODGATEMOGATEMo89HTI方式字段TO方式字段8位分两组,高4位控制T1,低4位控制TO。(1)GATE-门控位GATE=O,定时器是否计数,由控制位TRO(TO)或者TR1(T1)来控制。TRx等于1时启动。3
3 中断,T0、T1、T2 对应的中断号分别为 1,3, 12。 思考:16 位计数器,共可以满足多少次计数,假设定时模 式用 12MHz 的晶振,一次最长可以计时多久,计时一次多长时 间。 2.定时/计数器(T0/T1)的管理 2.1 TCON 字节地址 88H (1)TF1、TF0—计数溢出标志位 当计数器计数溢出时,该位置“1”。 (2)TR1、TR0—计数运行控制位 TR1 位(或 TR0)=1,启动计数器计数的必要条件。 TR1 位(或 TR0)=0,停止计数器计数。 该位可由软件置“1”或清“0”。 2.2 工作方式控制寄存器 TMOD TMOD 用于选择定时器/计数器的工作模式和工作方式,字 节地址为 89H,不能位寻址,格式如下。 8 位分两组,高 4 位控制 T1,低 4 位控制 T0。 (1)GATE-门控位 GATE=0,定时器是否计数,由控制位 TR0(T0)或者 TR1 (T1)来控制。TRx 等于 1 时启动
GATE=1,定时器是否计数,由外中断引脚P3.2(TO)或者P3.3(T1)上的高电平与运行控制位TRx共同控制。(2)C/T*-计数器模式和定时器模式选择位C/T*=0,定时器模式,对系统时钟或系统时钟12分频后的脉冲进行计数。C/T*=1,计数器模式,计数器对外部输入引脚TO(P3.4)或T1(P3.5)的外部脉冲(负跳变)计数。(3)工作方式选择位-M1和MOMOM1工作方式00方式0:自动重装16位定时计数器01方式1:16位定时计数器10方式2:自动重装8位定时计数器11方式3:只有TO有,T1停止工作注意:本部分强调自动重装16位定时计数器时STC15系列特有的功能,是在89系列芯片上的一个重要的改进。2.3辅助寄存器AUXRR(8EH)B7B6B5B3B1BOB4B2T0x12T1x12T2RT2x12-1)TOx12:用来设置定时器/计数器TO作为定时器时的计数脉冲,TOx12=0时,计数脉冲为系统时钟十二分之一,一次计数12T。TOx12=1时,计数脉冲为系统时钟,一次计数1T。2)T1x12:用来设置定时器/计数器T1作为定时器时的计数脉冲,T1x12=0时,计数脉冲为系统时钟十二分之一,一次计数12T。T1x12=1时,计数脉冲为系统时钟,:一次计数1T。4
4 GATE=1,定时器是否计数,由外中断引脚 P3.2(T0)或者 P3.3(T1)上的高电平与运行控制位 TRx 共同控制。 (2)C/T*-计数器模式和定时器模式选择位 C/T*=0,定时器模式,对系统时钟或系统时钟 12 分频后 的脉冲进行计数。 C/T*=1,计数器模式,计数器对外部输入引脚 T0(P3.4) 或 T1(P3.5)的外部脉冲(负跳变)计数。 (3)工作方式选择位-M1 和 M0 M1 M0 工作方式 0 0 方式 0:自动重装 16 位定时计数器 0 1 方式 1:16 位定时计数器 1 0 方式 2:自动重装 8 位定时计数器 1 1 方式 3:只有 T0 有,T1 停止工作 注意:本部分强调自动重装 16 位定时计数器时 STC15 系 列特有的功能,是在 89 系列芯片上的一个重要的改进。 2.3 辅助寄存器 AUXR(8EH) 1)T0x12:用来设置定时器/计数器 T0 作为定时器时的计 数脉冲,T0x12=0 时,计数脉冲为系统时钟十二分之一,一次 计数 12T。T0x12=1 时,计数脉冲为系统时钟,一次计数 1T。 2)T1x12:用来设置定时器/计数器 T1 作为定时器时的计 数脉冲,T1x12=0 时,计数脉冲为系统时钟十二分之一,一次 计数 12T。T1x12=1 时,计数脉冲为系统时钟,一次计数 1T
3)不可位寻址,请思考如何实现置1和置0。如:AUXR=AUXR0x40AUXR=0x80AUXR=0xC0注意:本部分强调传统89系列芯片用作定时时,技术脉冲位系统时钟的十二分之一,可将定时脉冲设置为系统时钟本身为STC15系列芯片的一个重大的改进。3.工作方式TO有四种工作方式0、1、2、3。T1有三种工作方式0、1、2。TO和T1的0、1、2三种工作方式时完全相同的,以TO为例做介绍。3.1方式0工作与方式0时结构如图2所示。+12AUXR.7=0SYSclk-TOCLKOCLKOUTAUXR.7=C/T=0TFO>Interup(8Bits)(8bits)CT=1P3. 4 TO Pincontrolt+IROGATERLTLORL_THO(8 Bits) (8 bits)INTO图2方式0示意图自动重装计数实现方式如下:通过两个特殊功能寄存器THO和TLO和两个隐含计数器RL_THO和RL_TLO完成。a、THO和TLO构成的16位加法计数器。b、RLTHO和RLTLO中保存着初值。C、THO和RL_THO共用地址,RL_TLO和TLO共用地址。5
5 3)不可位寻址,请思考如何实现置 1 和置 0。 如:AUXR=AUXR|0x40 AUXR|=0x80 AUXR|=0xC0 注意:本部分强调传统 89 系列芯片用作定时时,技术脉 冲位系统时钟的十二分之一,可将定时脉冲设置为系统时钟本 身为 STC15 系列芯片的一个重大的改进。 3. 工作方式 T0 有四种工作方式 0、1、2、3。T1 有三种工作方式 0、 1、2。T0 和 T1 的 0、1、2 三种工作方式时完全相同的,以 T0 为例做介绍。 3.1 方式 0 工作与方式 0 时结构如图 2 所示。 图 2 方式 0 示意图 自动重装计数实现方式如下: 通过两个特殊功能寄存器 TH0 和 TL0 和两个隐含计数器 RL_TH0 和 RL_TL0 完成。 a、TH0 和 TL0 构成的 16 位加法计数器。 b、RL_TH0 和 RL_TL0 中保存着初值。 c、TH0 和 RL_TH0 共用地址,RL_TL0 和 TL0 共用地址