第7章 定时器计数器

合集下载

单片机原理与应用(C51编程+proteus仿真)第2版张毅刚--第7章课后习题答案2020年1月30日整理

单片机原理与应用(C51编程+proteus仿真)第2版张毅刚--第7章课后习题答案2020年1月30日整理

单片机原理与应用(C51编程+proteus仿真)第2版-张毅刚课后习题参考答案第7章思考题及习题7参考答案一、填空1.如果采用晶振的频率为3MHz,定时器/计数器Tx(x=0,1)工作在方式0、1、2下,其方式0的最大定时时间为(),方式1的最大定时时间为(),方式2的最大定时时间为()。

答:32.768ms,262.144ms,1024μs 2.定时器/计数器用作计数器模式时,外部输入的计数脉冲的最高频率为系统时钟频率的()。

答:1/243.定时器/计数器用作定时器模式时,其计数脉冲由()提供,定时时间与()有关。

答:系统时钟信号12分频后,定时器初值4.定时器/计数器T1测量某正单脉冲的宽度,采用方式()可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度为()。

答:方式1定时,131.072ms。

5. 定时器T2 有3种工作方式:()、()和(),可通过对寄存器()中的相关位进行软件设置来选择。

答:捕捉,重新装载(增计数或减计数),波特率发生器,T2CON6. AT89S52单片机的晶振为6MHz,若利用定时器T1的方式1定时2ms,则(TH1)=(),(TL1)=()。

答:FCH,18H。

二、单选1.定时器T0工作在方式3时,定时器T1有()种工作方式。

A.1种B.2种 C.3种 D.4种答:C2. 定时器T0、T1工作于方式1时,其计数器为位。

A.8位B.16位C.14位D.13位答:B3. 定时器T0、T1的GATEx=1时,其计数器是否计数的条件()。

A. 仅取决于TRx状态B. 仅取决于GATE位状态C.是由TRx和INTx两个条件来共同控制D. 仅取决于INTx的状态答:C4. 定时器T2工作在自动重装载方式时,其计数器为位。

A.8位B. 13位C.14位D. 16位答:D5. 要想测量INT0引脚上的正单脉冲的宽度,特殊功能寄存器TMOD的内容应为。

A.87HB. 09HC.80HD. 00H答:B三、判断对错1.下列关于T0、T1的哪些说法是正确的。

单片机原理及接口技术(C51编程)第7章 定时器计数器

单片机原理及接口技术(C51编程)第7章 定时器计数器
30
图7-14 由外部计数输入信号控制LED的闪烁
(3)设置IE寄存器 本例由于采用T1中断,因此需将IE寄存器的EA、ET1位置1。
(4)启动和停止定时器T1 将寄存器TCON中TR1=1,则启动T1计数;TR1=0,则停止T1计数。
参考程序如下:
#include <reg51.h> void Delay(unsigned int i)
7.4 定时器/计数器的编程和应用 4种工作方式中,方式0与方式1基本相同,只是计数位数不同。方
式0为13位,方式1为16位。由于方式0是为兼容MCS-48而设,计数初 值计算复杂,所以在实际应用中,一般不用方式0,常采用方式1。
7.4.1 P1口控制8只LED每0.5s闪亮一次 【例7-1】在AT89S51的P1口上接有8只LED,原理电路见图7-
当TMOD的低2位为11时,T0被选为方式3,各引脚与T0的逻辑关系 见图7-8。
T0分为两个独立的8位计数器TL0和TH0,TL0使用T0的状态控制位 C/T* 、GATE、TR0 ,而TH0被固定为一个8位定时器(不能作为外部 计数模式),并使用定时器T1的状态控制位TR1,同时占用定时器T1的 中断请求源TF1。
13。采用T0方式1的定时中断方式,使P1口外接的8只LED每0.5s闪亮 一次。
23
图7-13 方式1定时中断控制LED闪亮
24
(1)设置TMOD寄存器 T0工作在方式1,应使TMOD寄存器的M1、M0=01;应设置C/T*=0,为定
时器模式;对T0的运行控制仅由TR0来控制,应使相应的GATE位为0。定时 器T1不使用,各相关位均设为0。所以,TMOD寄存器应初始化为0x01。 (2)计算定时器T0的计数初值

认识单片机的定时器计数器

认识单片机的定时器计数器

void main(void) { TMOD=0x01;
TH0=-25000/256; TL0=-25000%256; TR0=1; ET0=1; EA=1; while(1); } void timer0(void) interrupt 1 { TH0=-25000/256;
TL0=-25000%256; P10=~P10; }
根据定时时间T,及公式(1)、(2)分别可以求出初 值N为:
方式1: N=216-T×fosc/12
(3)
方式2、方式3 :N=28-T×fosc/12 (4)
如果fosc=12MHZ,以上公式可简化为
方式1: N=216-T
方式2、方式3 :N=28-T
例如:系统的时钟频率是12MHz,在方式1下,如果希望定时 器/计数器T0的定时时间T为10ms,则初值N =216-T=6553610000=55536
任务一、认识单片机的定时器/计数器
一、定时器/计数器及其应用 在单片机应用系统中,定时或计数是必不可少的。例如: 测量一个脉冲信号的频率、周期,或者统计一段时间里 电机转动了多少圈等。常用的定时方法有:
1、软件定时 软件定时是依靠执行一段程序来实现的,这段程序本身 没有具体的意义,通过选择恰当的指令及循环次数实现 所需的定时,由于执行每条指令都需一定的时间,执行 这段程序所需总的时间就是定时时间。 软件定时的特点是无需硬件电路,但定时期间CPU被占 用,增加了CPU的开销,因此定时时间不宜过长,而且 定时期间如果发生中断,定时时间就会出现误差。
led=_crol_(led,1); 满10次变量led左移1位送P0口
P0=led;
}
}
[案例3] 用定时器的计数方式实现外部中断。如图 所示,P0口控制8只发光管轮流点亮,发光管点 亮时间为500ms,单脉冲电路控制发光管的移动 方向,按下单脉冲按钮,发光管左移,再按下发 光管右移 。

计数器与定时器教学课件PPT

计数器与定时器教学课件PPT
CLK 1 GATE 1 OUT 1
CLK 2 GATE 2 OUT 2
引脚
D7~D0:8位、双向、三态数据线,直接和系统 数据总线相连。读/写16位数据则分两次进行。
CS:片选信号,低电平有效。 RD,WR:读信号,写信号,低电平时有效。 A1,A0:8253端口选择线。00~10分别选择计
《微机原理与接口》教学课件
方式5 硬件触发选通信号
-WR
写入 写入 方式5 4
写入 3
CLK
GATE
OUT
4321 0
3 2 13 2 10
▪ GATE:触发作用
触发
重触发:装计数值
《微机原理与接口》教学课件
6、方式5: 硬件触发选通信号
在这种方式下,设置了控制字后,输出为 高。在设置了计数值后,计数器并不立即 开始计数,而是由门控脉冲的上升沿触发 启动。当计数到0时,输出变低,经过一 个CLK脉冲,输出恢复为高,停止计数。 要等到下次门控脉冲的触发才能再计数
OUT端随着工作方式的不同和当前计数状态的 不同,一定有电平输出变化,而且输出变化均 发生在CLK的下降沿。OUT的输出波形在写控 制字之前为未定态,在写了控制字之后到计数 之前为计数初态,再之后有计数态、暂停态、 结束态等。
对于给定的工作方式,门控信号GATE的触发条 件是有具体规定的,或电平触发,或边沿触发, 或两者均可
《微机原理与接口》教学课件
各种工作方式的输出波形
方式 0 方式 1 方式 2 方式 3 方式 4 方式 5
0
N0
N
1 0/N
N0 10
N N/2 0/N N/2 0
N N 01
01 N 01
《微机原理与接口》教学课件

单片机原理及接口技术(C51编程)(第2版)-习题答案 - 第7章习题解答

单片机原理及接口技术(C51编程)(第2版)-习题答案 - 第7章习题解答

第7章思考题及习题7参考答案一、填空1.如果采用晶振的频率为3MHz,定时器/计数器T x(x=0,1)工作在方式0、1、2下,其方式0的最大定时时间为,方式1的最大定时时间为,方式2的最大定时时间为。

答:32.768ms,262.144ms,1024µs2.定时器/计数器用作计数器模式时,外部输入的计数脉冲的最高频率为系统时钟频率的。

答:1/243.定时器/计数器用作定时器模式时,其计数脉冲由提供,定时时间与有关。

答:系统时钟信号12分频后,定时器初值4.定时器/计数器T1测量某正单脉冲的宽度,采用方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度为。

答:方式1定时,131.072ms。

5. 定时器T2 有3种工作方式:、和,可通过对寄存器中的相关位进行软件设置来选择。

答:捕捉,重新装载(增计数或减计数),波特率发生器,T2CON6. AT89S52单片机的晶振为6MHz,若利用定时器T1的方式1定时2ms,则(TH1)= ,(TL1)= 。

答:FCH,18H。

二、单选1.定时器T0工作在方式3时,定时器T1有种工作方式。

A.1种B.2种 C.3种D.4种答:C2. 定时器T0、T1工作于方式1时,其计数器为位。

A.8位B.16位C.14位D.13位答:B3. 定时器T0、T1的GATE x=1时,其计数器是否计数的条件。

A. 仅取决于TR x状态B. 仅取决于GATE位状态C. 是由TR x和INT x两个条件来共同控制D. 仅取决于INT x的状态答:C4. 定时器T2工作在自动重装载方式时,其计数器为位。

A.8位B. 13位C.14位D. 16位答:D5. 要想测量INT0引脚上的正单脉冲的宽度,特殊功能寄存器TMOD的内容应为。

A.87HB. 09HC.80HD. 00H答:B三、判断对错1.下列关于T0、T1的哪些说法是正确的。

A.特殊功能寄存器SCON,与定时器/计数器的控制无关。

定时器与计数器

定时器与计数器

第7章定时器/计数器MCS-51单片机内部有两个16位可编程的定时器/计数器,即定时器T0和定时器T1(8052提供3个,这第三个称定时器T2)。

它们既可用作定时器方式,又可用作计数器方式。

7 . 1定时器/计数器结构定时器/计数器的基本部件是两个8位的计数器(其中TH1,TL1是T1的计数器,TH0,TL0是T0的计数器)拼装而成。

在作定时器使用时,输入的时钟脉冲是由晶体振荡器的输出经12分频后得到的,所以定时器也可看作是对计算机机器周期的计数器(因为每个机器周期包含12个振荡周期,故每一个机器周期定时器加1,可以把输入的时钟脉冲看成机器周期信号)。

故其频率为晶振频率的1/12。

如果晶振频率为12MH Z,则定时器每接收一个输入脉冲的时间为1us。

当它用作对外部事件计数时,接相应的外部输入引脚T0(P3.4)或T1(P3.5)。

在这种情况下,当检测到输入引脚上的电平由高跳变到低时,计数器就加1(它在每个机器周期的S5P2时采样外部输入,当采样值在这个机器周期为高,在下一个机器周期为低时,则计数器加1)。

加1操作发生在检测到这种跳变后的一个机器周期中的S3P1,因此需要两个机器周期来识别一个从“1”到“0”的跳变,故最高计数频率为晶振频率的1/24。

这就要求输入信号的电平要在跳变后至少应在一个机器周期内保持不变,以保证在给定的电平再次变化前至少被采样一次。

定时器/计数器有四种工作方式,其工作方式的选择及控制都由两个特殊功能寄存器(TMOD和TCON)的内容来决定。

用指令改变TMOD或TCON的内容后,则在下一条指令的第一个机器周期的S1P1时起作用。

1、定时器的方式寄存器TMOD图7-1 TMOD寄存器各位定义特殊功能寄存器TMOD为定时器的方式控制寄存器,寄存器中每位的定义如图7-1所示。

高4位用于定时器1,低4位用于定时器0。

其中M1,M0用来确定所选的工作方式,如表7-1所示。

①M1 M0 定时器/计数器四种工作方式选择,见表7-1所示。

KL25-ch07(定时器模块)-20130910课件

KL25-ch07(定时器模块)-20130910课件

15
PIT有以下三个基本操作: 1.定时器 当使能时,定时器定期产生触发。定时器加载 LDVAL寄存器中指定的开始值,递减计数到0,然后再次加 载单独的开始值。每当定时器达到0时,它将生成一个触发 脉冲并置位中断标志。一个新的中断只有在当前一个中 断被清0后才能产生。 有两种方法来改变计数器的周期: 1)通过先禁用定时器,设置一个新的载入值,然后再 使能计时器的方式可以修改正在运行的定时器的计数器 周期。
7.4.3 PIT构件设计及测试实例 在 P183 的 程 序中 ,将 MCU 的 串口与 PC 机相连 , PIT每次中断进行一次计时,并通过串口将计时信息发送 给PC机。通过串口调试工具,我们可以看到时间计数值 在递增。 PIT 模块具有初始化、使能 PIT 通道、禁止 PIT 通道以及PIT中断处理函数。
2
7.2 ARM Cortex-M0+内核时钟
ARM Cortex-M内核中包含了一个简单的定时器 SysTick,又称为“滴答”定时器。 SysTick定时器被捆 绑在NVIC(嵌套向量中断控制器)中,有效位数是24位 ,采用减1计数的方式工作,当减1计数到0,可产生 SysTick异常(中断),中断号为15。
7.2.2 Systick构件设计及测试工程
书P158给出以Systick定时器模块为时钟源,每隔一 秒钟通过串口向PC机发送时钟、分钟和秒钟的应用。
5
7.3 定时器/PWM模块功能概述及编程结构
7.3.1 TPM模块功能概述
TPM(定时器/脉宽调制模块)共有三个模块 TPM0/TPM1/TPM2,TPM0有6个通道,TPM1和TPM2 只有2个通道。TPM支持输入捕捉、输出比较,并且能够 产生PWM信号来控制电机。 TPM的基本定时器部分是一个递增的计数器,通过 设定模块的溢出值,当计数器递增到该数值时,产生 TPM中断,可以通过选择时钟源和溢出值设定该计数器 的频率。 1.外部引脚 TPM模块具有基本定时、输入捕捉、输出比较、脉 宽调制(PWM)功能。

微机原理与接口技术_第7章8253

微机原理与接口技术_第7章8253
15
§7-1 8253的工作原理 ——8253的内部结构和引脚信号
然后,开始递减计数。即每输入一个时钟脉冲,计数
器的值减1,当计数器的值减为0时,便从OUT引脚输出 一个信号。输出信号的波形主要由工作方式决定,同 时还受到从外部加到GATE引脚上的门控信号控制,它 决定是否允许计数。 当用8253作外部事件计数器时,在CLK脚上所加的计 数脉冲是由外部事件产生的,这些脉冲的间隔可以是 不相等的。 如果要用它作定时器,则CLK引脚上应输入精确的时 钟脉冲。这时,8253所能实现的定时时间,决定于计 数脉冲的频率和计数器的初值,即 定时时间=时钟脉冲周期tc×预臵的计数初值n
16
§7-1 8253的工作原理 ——8253的内部结构和引脚信号 ③引脚 8253的3个计数器都各有3个引脚,它们是:
CLK0~CLK2:计数器0~2的输入时钟脉冲从这里输
入。频率不能大于2MHz。
OUT0~OUT2:计数器0~2的输出端。
GATE0~GATE2:计数器0~2的门控脉冲输入端。
4
第七章 可编程计数器/定时器8253及其应用 ——概述 2. 不可编程的硬件定时 555芯片是一种常用的不可编程器件,加上外接电阻和电 容就能构成定时电路。这种定时电路结构简单,价格 便宜,通过改变电阻或电容值,可以在一定的定时范 围内改变定时时间。但这种电路在硬件已连接好的情 况下,定时时间和范围就不能由程序来控制和改变, 而且定时精度也不高。 3. 可编程的硬件定时 ①可编程定时器/计数器电路利用硬件电路和中断 方法控制定时,定时时间和范围完全由软件来确 定和改变,并由微处理器的时钟信号提供时间基 准,这种时钟信号由晶体振荡器产生,故计时精
12
§7-1 8253的工作原理 ——8253的内部结构和引脚信号 8253输入信号组合的功能表

第7章习题解答

第7章习题解答

第7章思考题及习题71.如果采用的晶振的频率为24MHz,定时器/计数器工作在方式0、1、2下,其最大定时时间各为多少?答:晶振的频率为24MHz, 机器周期为0.5µs。

方式0最大定时时间=0.5µs×213=0.5µs×8192=4096µs方式1最大定时时间=0.5µs×216=0.5µs×65536=327686µs方式2最大定时时间=0.5µs×28=0.5µs×256=128µs2.定时器/计数器用作计数器模式时,对外界计数频率有何限制?答:外部输入的计数脉冲的最高频率为系统振荡器频率的1/24。

3.定时器/计数器的工作方式2有什么特点?适用于哪些应用场合?答:方式2为初值自动装入的8位定时器/计数器,克服了在循环定时或循环计数应用时就存在用指令反复装入计数初值影响定时精度的问题。

4.TH x与TL x(x= 0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?答:THx与TLx(x = 0,1)是计数器,其内容可以随时用指令更改,但是更改后的新值要等当前计数器计满后才能刷新。

5.Proteus虚拟仿真使用定时器T0,采用方式2定时,在P1.0脚输出周期为400µs,占空比为4:1的矩形脉冲,要求在P1.0脚接有虚拟示波器,观察P1.0脚输出的矩形脉冲波形。

答:略6.Proteus虚拟仿真利用定时器T1的中断来使P1.7控制蜂鸣器发出1kHz的音频信号,假设系统时钟频率为12MHz。

答:利用定时器T1的中断控制P1.7引脚输出频率为1kHz的方波音频信号,驱动蜂鸣器发声。

系统时钟为12MHz。

方波音频信号的周期为1ms,因此T1的定时中断时间为0.5 ms,进入中断服务程序后,对P1.7求反。

中职教育-《89C51单片机实用教程》课件:第7章 89C51单片机中断系统和定时器(4).ppt

中职教育-《89C51单片机实用教程》课件:第7章  89C51单片机中断系统和定时器(4).ppt

SJMP LOOP
END
例7.9 工作模式1的应用 利用定时器 T1 工作模式1, 在引脚 P1.1 上输出
7.4 89C51单片机中定时器/计数器的应用
在定时器/计数器应用时,进行如下工作: 1. 设定TMOD来选择定时器T0,T1的工作方式:
按照实际需要,选择定时方式还是计数方式; 按照定时长短,选择工作模式0、1、2或 3 ; 按照具体要求,选择是否受INT0 (INT1) 控制。 2.根据定时时间长短和工作模式计算计数初值: 根据工作模式,计算出定时时间的计数初值 ;
将计数初值送入定时器中(TH1,TL1,TH0、TL0) 3. 对TCON的设定来启动定时器/计数器工作。 4. 正确选择用程序查询方法或程序中断方式来进
行定时时间到(计数溢出)后的处理操作。
7.4.1 定时器工作方式的设置和计数初值计算
对定时器的工作模式寄存器TMOD进行设定:
l. 定时方式和计数方式选择。
解: ⑴ 如图在引脚 P1.0 上输出周期为 2ms 连续方波,
需要定时器 T0 产生 1ms 的定时。 每隔1ms时间 P1.0 引脚的输出取反即可。
解:
⑵. T0工作于模式0,计数器为13位的加1计数器, fosc=6MHz,则1个振荡周期为1/6μs 定时时间为1ms,根据公式: t =(213-T0初值)×振荡周期×12 1×10-3=(213-T0初值) ×( 1/6×10-6 ) ×12 T0初值= 7692 = 1111000001100B
多为:213=8192个。
例7.5 定时器T0工作在模式0, CPU主频 fosc=6MHz 定时1ms, T0的初值为多少?计算最长定时时间?
解:T0工作于模式0时, 为13位的加1计数器 ①. 定时1ms,根据公式:

定时器计数器的定时实验

定时器计数器的定时实验

定时器计数器的定时实验简介本文将介绍定时器计数器的定时实验,主要涉及定时器计数器的原理、使用方法以及实验步骤。

定时器计数器是一种常用的计时设备,广泛应用于各种计时场景。

定时器计数器的原理定时器计数器是一种能够精确计时的设备,它通常由一个可编程的时钟和一个计数器组成。

计数器根据时钟的脉冲信号进行计数,从而实现计时的功能。

定时器计数器的工作原理如下:1.初始化计数器:将计数器的初始值设置为0。

2.启动计数器:通过控制信号将时钟输入到计数器中,开始计数。

3.计数过程:计数器根据时钟的脉冲信号进行计数,每接收到一个时钟脉冲,计数器的值加1。

4.判断定时完成:当计数器的值等于设定的定时值时,表示定时完成。

5.停止计数器:定时完成后,停止时钟信号的输入,计数器停止计数。

定时器计数器的使用方法定时器计数器通常由软件通过编程的方式进行使用,具体方法如下:1.初始化定时器计数器:首先,需要将计数器的初始值设置为0,并且设定定时的时间。

2.启动计数器:通过控制信号将时钟输入到计数器中,开始计数。

3.监测计数器的值:在计数的过程中,可以通过查询计数器的值来获取当前的计时结果。

4.判断定时完成:当计数器的值等于设定的定时值时,表示定时完成。

5.停止计数器:定时完成后,停止时钟信号的输入,计数器停止计数。

实验步骤以下是一个简单的实验步骤,用于演示定时器计数器的定时功能:1.准备硬件:–打开开发板,并确保定时器计数器的引脚与外部设备连接正常。

–连接调试器,以便在实验过程中监测计数器的值。

2.编写代码:–在开发环境中,编写一段代码,完成实验的需求,包括初始化计数器、设定定时值等。

3.烧录程序:–将编写好的程序烧录到开发板中。

4.启动实验:–启动开发板,开始实验。

5.监测计数器的值:–在实验过程中,通过调试器监测计数器的值,以便实时了解计时结果。

6.判断定时完成:–当计数器的值等于设定的定时值时,表示定时完成,可以进行相关操作,如触发其他事件、输出提示信息等。

单片机中的定时器和计数器

单片机中的定时器和计数器

单片机中的定时器和计数器单片机作为一种嵌入式系统的核心部件,在各个领域都发挥着重要的作用。

其中,定时器和计数器作为单片机中常用的功能模块,被广泛应用于各种实际场景中。

本文将介绍单片机中的定时器和计数器的原理、使用方法以及在实际应用中的一些典型案例。

一、定时器的原理和使用方法定时器是单片机中常见的一个功能模块,它可以用来产生一定时间间隔的中断信号,以实现对时间的计量和控制。

定时器一般由一个计数器和一组控制寄存器组成。

具体来说,定时器根据计数器的累加值来判断时间是否到达设定的阈值,并在时间到达时产生中断信号。

在单片机中,定时器的使用方法如下:1. 设置定时器的工作模式:包括工作在定时模式还是计数模式,以及选择时钟源等。

2. 设置定时器的阈值:即需要计时的时间间隔。

3. 启动定时器:通过控制寄存器来启动定时器的运行。

4. 等待定时器中断:当定时器计数器的累加值达到设定的阈值时,会产生中断信号,可以通过中断服务函数来进行相应的处理。

二、计数器的原理和使用方法计数器是单片机中另一个常见的功能模块,它主要用于记录一个事件的发生次数。

计数器一般由一个计数寄存器和一组控制寄存器组成。

计数器可以通过外部信号的输入来触发计数,并且可以根据需要进行计数器的清零、暂停和启动操作。

在单片机中,计数器的使用方法如下:1. 设置计数器的工作模式:包括工作在计数上升沿触发模式还是计数下降沿触发模式,以及选择计数方向等。

2. 设置计数器的初始值:即计数器开始计数的初始值。

3. 启动计数器:通过控制寄存器来启动计数器的运行。

4. 根据需要进行清零、暂停和启动操作:可以通过控制寄存器来实现计数器的清零、暂停和启动操作。

三、定时器和计数器的应用案例1. 蜂鸣器定时器控制:通过定时器模块产生一定频率的方波信号,控制蜂鸣器的鸣叫时间和静默时间,实现声音的产生和控制。

2. LED呼吸灯控制:通过定时器模块和计数器模块配合使用,控制LED的亮度实现呼吸灯效果。

llxPLC-7定时器计数器

llxPLC-7定时器计数器

STL指令
图3-25 加计数器
2. 递减计数器CTD(Count Down) 装载输入(LD)为ON时,计数器位被复位, 并把设定值装入当前值。减至0时,停止计数,计 数器位被置1。
3. 加减计数器CTUD
图3-26 减计数器
图3-27 加减计数器
习 题
(1) 接通延时定时器(TON)的输入(IN)电路 时开 始定时,当前值大于等于设定值时其定时器位变 为 ,其常开触点 ,常闭触点 , (2) 接通延时定时器(TON)的输入(IN)电路 时被 复位,复位后其常开触点 ,常闭触点 ,当前值 等于 。 (3) 若加计数器的计数输入电路 (CU) 、复位输入电路(R) , 计数器的当前值加1。当前值大于等于设定值(PV)时, 其常开触点 ,常闭触点 。 复位输入电路 时,计数器被复位,复位后其常开触 点 ,常闭触点 ,当前值为 。 (4) 输出指令(=)不能用于 过程映像寄存器。 (5) SM 在首次扫描时为ON,SM0.0一直为 。
Байду номын сангаас
保持型通电延时定时器TONR (Retentive On-Delay Timer)
图3-23 保持型接通延时定时器
4 分辨率对定时器的影响
(1) 1ms定时器
定时器和当前值每隔1ms刷新一次,不与扫描周 期同步。
(2) 10ms定时器 执行定时器指令时开始定时,在每一个扫描周 期开始时刷新定时器,每个扫描周期只刷新一次。 (3) 100ms定时器 只有在执行定时器指令时,才对100ms定时器的 当前值进行刷新。
3.4.2 计数器指令
计数器指令
计数器主要用于累计输入脉冲的次数。S7-200系列 PLC有三种计数器:递增计数器CTU、递减计数器CTD、 增减计数器CTUD。三种计数器共有256个。

单片机原理及智能仪表技术第7章

单片机原理及智能仪表技术第7章
加法计数器,计满溢出,触发中断 计数初值的计算方法
计数状态:X=M-N
定时状态:X=M-定时时间/T,T为机器周期
2、TMOD定时器方式设置寄存器(89H):
TMOD主要用于 选择定时器的工作 模式(C/T)、启动方 式(GATE)和工作方 式等。该寄存器的 格式如图所示。
2、TMOD定时器方式设置寄存器(89H):
TMOD,#方式字 THx,#XH TLx,#XL EA ETx TRx
;选择方式 ;装入Tx时间常数 ;开Tx中断
;启动Tx定时器
需考虑:1. 按实际需要选择定时/计数功能; 2. 按时间或计数长度选择工作方式; 3. 计算时间常数:
二、定时/计数器初值的计算
(1)定时器初值的计算
在定时器模式下,计数器由单片机主脉冲经 12 分频后 计数。因此,定时器定时时间T的公式:T=(M-TC)×T计数, 上式也可写成:TC=M-T/T计数 式中,M为模值,和定时器的工作方式有关,在方式0时 M为213,在方式1时M为216,在方式2和方式3时M为28;T计数是 单片机振荡周期TCLK的12倍;TC为定时器的定时初值。 例:单片机时钟频率12MHz,定时器工作在方式1下,定 时100us,初值为多少? 解:时钟频率Ф CLK=12MHz,所以振荡周期TCLK=1/12us T计数=12×TCLK=1us,M=216=65536,T=100us 所以,TC=65536-100/1=65436,0xFF9C
定时器工作方式:当选择定时器方式时(C/T=0),TR1=1,定时器对系统的机器周 期计数,每过一个机器周期,计数器TH1,TH0加1,直至计满规定个数回零,置 位定时器中断标志(TF1)产生溢出中断。根据机器周期和设定的计数初值,可以定 时产生各种精确的时间。 计数器工作方式:当选择计数器方式时(C/T=1),外部脉冲通过引脚T1(P3.5)引入, 计数器对此外部脉冲的下降沿进行加1计数,直至计满规定值回零,置位定时器中 断标志(TF1)产生溢出中断。根据规定的时间内的计数个数,可以得到信号的频率。 计数最高频率不得超过振荡频率的1/24。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机原理及接口技术
C/T-=0,T1(或T0)为定时器工作模式,计数脉冲来自系统时钟; C/T-=1, T1(或T0)为计数器工作模式,计数脉冲来自外部输入脉 冲。 •设置为定时器模式时,加1计数器是对内部机器周期计数(1个 机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。 定时时间t等于计数值N乘以机器周期Tcy。 •计数模式时,由溢出时计数器的值减去计数初值才是加1计数器 的计数值。 •定时器模式时:t=N*Tcy=N*12/fosc •计数模式时:计数脉冲是T0引脚上的外部脉冲。计数初值计 13 算的公式为:
28
单片机原理及接口技术
/*以下为定时器T0的中断服务程序*/ void T0_int(void) interrupt 1
{TH0=0xee;
TL0=0x00; i--; if(i<=0) {P1=~P1;
7-13)。下面采用定时器T0的方式1的定时中断方式,使P1口外接
的8只LED每0.5s闪亮一次。 (1)设置TMOD寄存器 定时器T0工作在方式1,应使TMOD寄存器的M1、M0=01;应设 置C/T-=0,为定时器工作模式;对T0的运行控制仅由TR0来控制,
应使GATE=0。定时器T1不使用,各相关位均设为0。所以,
TMOD寄存器应初始化为0x01。
24
单片机原理及接口技术
图7-13 方式1定时中断控制LED闪亮 25
单片机原理及接口技术
•设置为定时器模式时,加1计数器是对内部机器周期计数(1个 机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。 定时时间t等于计数值N乘以机器周期Tcy。 •计数模式时,由溢出时计数器的值减去计数初值才是加1计数器 的计数值。 •定时器模式时:t=N*Tcy=N*12/fosc •计数模式时:计数脉冲是T0引脚上的外部脉冲。计数初值计 13 算的公式为:
单片机原理及接口技术
7.2 定时器/计数器的4种工作方式
7.2.1 方式0
方式0为13位计数器,由TLx(x=0,1)的低5位(高3位未 用)和THx的高8位组成。TLx的低5位溢出时向THx进位, THx溢出时,置位TCON中的溢出标志位TFx置“1”,向 CPU发出中断请求。
单片机原理及接口技术
15
单片机原理及接口技术
图7-8 定时器/计数器T0方式3的逻辑结构框图
16
单片机原理及接口技术
(1)T1工作在方式0
T1的控制字中M1、M0 = 00时,T1工作在方式0,工作示意图 如图7-9所示。
图7-9 T0工作在方式3时T1为方式0的工作示意图
17
单片机原理及接口技术
(2)T1工作在方式1 当T1的控制字中M1、M0 = 01时,T1工作在方式1,工作示意图
第 7章
AT89S51单片机的 定时器/计数器
1
单片机原理及接口技术
本章内容
AT89S51单片机片内定时器/计数器的结构与功能 定时器/计数器的C51编程及应用实例
学习要求:
重点掌握: AT89S51单片机片内定时器/计数器的结构与功 能,两种工作模式和4种工作方式及相关的两个特殊功能寄 存器TMOD和TCON各位的定义及其编程 熟练掌握:定时器/计数器的C51编程。
采用定时器T0中断,因此需将IE寄存器中的EA、ET0位置1。
(4)启动和停止定时器T0 将定时器控制寄存器TCON中的TR0=1,则启动定时器T0; TR0=0,则停止定时器T0定时。
27
单片机原理及接口技术
参考程序如下:
#include<reg51.h>
char i=100;
void main( ) {TMOD=0x01;
提示:外部输入的计数脉冲的最高频率为系统振荡器频率的 1/24
250kHz 的外部脉冲; 500kHz的外部脉冲
22
单片机原理及接口技术
7.4 定时器/计数器的编程和应用
在4种工作方式中,方式0与方式1基本相同,只是计数器的计数 位数不同。方式0为13位计数器,方式1为16位计数器。由于方式0 计数初值计算复杂,所以在实际应用中,一般不用方式0,而采用
单片机原理及接口技术
由于确认一次负跳变花2个机器周期,即24个振荡周期,因 此外部输入的计数脉冲的最高频率为系统振荡器频率的1/24。
图7-12 对外部计数输入信号的要求
21
单片机原理及接口技术
例: 选用6MHz频率的晶体,允许输入的脉冲频率最高为? 如果选用12MHz频率的晶体,则可输入最高频率为?
门控位GATE具有特殊的作用。
(1)GATE=0时,A点(见图6-4)电位恒为1,B点电位仅取决于 TRx状态。TRx = 1,B点为高电平,控制端控制电子开关闭合,允 许T1(或T0)对脉冲计数。TRx = 0,B点为低电平,电子开关断 开,禁止T1(或T0)计数。
(2)GATE=1时,B点电位由INTX-(x = 0,1)的输入电平和 TRx的状态两个条件来定。当TRx=1,且INTX-=1时,B点才为1, 控制端控制电子开关闭合,允许T1(或T0)计数。故这种情况下 计数器是否计数是由TRx和INTX-两个条件来共同控制。
/*给变量i赋初值*/
/*设置定时器T0为方式1*/
TH0=0xee;
TL0=0x00; P1=0x00; EA=1; ET0=1; TR0=1; while(1) ; }
/*向TH0写入初值的高8位*/
/*向TL0写入初值的低8位*/ /*P1口8只LED点亮*/ /*总中断允许*/ /*定时器T0中断允许*/ /*启动定时器T0*/ /*无穷循环,等待定时中断*/
方式1。
初始化程序应完成如下工作:
对TMOD赋值,以确定T0和T1的工作方式。 计算初值,并将其写入TH0、TL0或TH1、TL1。 中断方式时,则对IE赋值,开放中断。 使TR0或TR1置位,启动定时/计数器定时或计数。
单片机原理及接口技术
7.4.1 P1口外接的8只LED每0.5s闪亮一次。 【例7-1】在AT89S51单片机的P1口上接有8只LED(电路见图
图7-11 T0工作在方式3时T1为方式2的工作示意 图
单片机原理及接口技术
7.3 对外部输入的计数信号的要求 当定时器/计数器工作在计数器模式时,计数脉冲来自 外部输入引脚T0或T1。当输入信号产生由1至0的跳变 (即负跳变)时,计数器值增1。每个机器周期的S5P2 期间,都对外部输入引脚T0或T1进行采样。如在第一个 机器周期中采得的值为1,而在下一个机器周期中采得的 值为0,则在紧跟着的再下一个机器周期S3P1期间,计 数器加1。
X=2 -N
单片机原理及接口技术
7.2.2 方式1
方式1的计数位数是16位,由TLx作为低8位、THx 作为高8位,组成了16位加1计数器 。
计数个数与计数初值的关系为:
X=216 -N
单片机原理及接口技术
7.2.3 方式2 方式2为自动恢复初值的8位计数方式。
计数个数与计数初值的关系为: X=28 -N 工作方式2特别适合于用作较精确的脉冲信号发生器。
AT89S51的定时器/计数器结构如上图所示,T0由特殊功能寄存器 TH0、TL0构成,T1由特殊功能寄存器TH1、TL1构成。
T0 和T1都具有定时器和计数器两种工作模式,4种工作方式
(方式0~3)。属于增1计数器。
特殊功能寄存器TMOD用于选择T0、T1的工作模式和工作方式。 特殊功能寄存器TCON用于控制T0、T1的启动和停止计数,同时 包含了T0、T1的状态。T0、 T1不论是工作在定时器模式还是计
X=2 -N
单片机原理及接口技术
(2)计算定时器T0的计数初值
设定时时间5ms(即5000µs),设定时器T0的计数初值为X,假设晶振的频
率为11.0592MHz,则定时时间为:定时时间t=(216−X)12/晶振频率
则5000=(216 −X)12/11.0592
得:X = 60928,转换成16进制后:0xee00,其中0xee装入TH0, 0x00装入TL0。 (3)设置IE寄存器
GATE:门控位。 GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可 以启动定时/计数器工作;√ GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚 或也为高电平时,才能启动定时/计数器工作。即此时定时器 的启动条件,加上了引脚为高电平这一条件。 C/T=1为计 C/T :定时/计数模式选择位。C/T =0为定时模式; 数模式。 M1、M0:工作方式设置位。定时/计数器有四种工作方式,由 M1M0进行设置。
如图7-10所示。
图7-10 T0工作在方式3时T1为方式1的工作示意图
18
单片机原理及接口技术
(3)T1工作在方式2 当T1的控制字中M1、M0 = 10时,T1的工作方式为方式2,
工作示意图如图7-11所示。
(4)T1设置在方式3。 当T0设置在方式3时,再把T1也设置成方式3,此时T1停止 计数。 19
单片机原理及接口技术
二、控制寄存器TCON
TCON可位寻址,其低4位用于控制外部中断,已在前面介绍。TCON的高4 位用于控制定时/计数器的启动和中断申请。其格式如下:
•TF1(TCON.7):T1溢出中断请求标志位。T1计数溢出时由硬件自 动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU 可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可 以用软件置1或清0,同硬件置1或清0的效果一样。 •TR1(TCON.6):T1运行控制位。TR1置1时,T1开始工作;TR1置 0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/ 计数器的启动与停止。 •TF0(TCON.5):T0溢出中断请求标志位,其功能与TF1类同。 •TR0(TCON.4):T0运行控制位,其功能与TR1类同。
相关文档
最新文档