当前位置:文档之家› 定时器工作原理

定时器工作原理

定时器工作原理
定时器工作原理

定时器工作原理 Revised as of 23 November 2020

定时器工作原理

通电延时型。只要在定时的时间段内(即1分钟)定时器一直得电,则常开触电就会闭合,只要定时器不断电常开触电就会一直闭合。定时器断电则常开触电断开

1,定时器/计数器的结构与功能

主要介绍定时器0(T0)和定时器1(T1)的结构与功能。图是定时器/计数器的结构框图。由图可知,定时器/计数器由定时器0、定时器1、定时器方式寄存器TMOD 和定时器控制寄存器TCON组成。

定时器0,定时器1是16位加法计数器,分别由两个8位专用寄存器组成:定时器0由TH0和TL0组成,定时器1由TH1和TL1组成。

图定时器/计数器结构框图

TL0、TL1、TH0、TH1的访问地址依次为8AH~8DH,每个寄存器均可单独访问。定时器0或定时器1用作计数器时,对芯片引脚T0()或T1()上输入的脉冲计数,每输入一个脉冲,加法计数器加1;其用作定时器时,对内部机器周期脉冲计数,由于机器周期是定值,故计数值确定时,时间也随之确定。

TMOD、TCON与定时器0、定时器1间通过内部总线及逻辑电路连接,TMOD用于设置定时器的工作方式,TCON用于控制定时器的启动与停止。

计数功能

计数方式时,T的功能是计来自T0T1的外部脉冲信号的个数。

输入脉冲由1变0的下降沿时,计数器的值增加1直到回零产生溢出中断,表示计数已达预期个数。外部输入信号的下降沿将触发计数,识别一个从“1”到“0”的跳变需2个机器周期,所以,对外部输入信号最高的计数速率是晶振频率的1/24。若晶振频率为6MHz,则计数脉冲频率应低于1/4MHz。当计数器满后,再来一个计数脉冲,计数器全部回0,这就是溢出。

脉冲的计数长度与计数器预先装入的初值有关。初值越大,计数长度越小;初值越小,计数长度越大。最大计数长度为65536(216)个脉冲(初值为0)。

定时方式

定时方式时,T记录单片机内部振荡器输出的脉冲(机器周期信号)个数。

每一个机器周期使T0或T1的计数器增加1,直至计满回零自动产生溢出中断请求。

定时器的定时时间不仅与定时器的初值有关,而且还与系统的时钟频率有关。在机器周期一定的情况下,初值越大,定时时间越短;初值越小,定时时间越长。最长的定时时间为65536(216)个机器周期(初值为0)。

定时器/计数器控制寄存器

与对定时器/计数器有关的控制寄存器共有4个:TMOD、TCON、IE、IP。IE、IP 已在中断一节中介绍,这里不再赘述。

定时器/计数器控制寄存器TCON

特殊功能寄存器TCON用于控制定时器的操作及对定时器中断的控制。其各位定义格式如下。其中D0~D3位与外部中断有关,已在中断系统一节中介绍。

TF0和TF1:定时器/计数器溢出标志位。当定时器/计数器0(或定时器/计数器1)溢出时,由硬件自动使TF0(或TF1)置1,并向CPU申请中断。

CPU响应中断后,自动对TF1清零。TF1也可以用软件清零。

TR0和TR1:定时器/计数起运行控制位。

TR0(或TR1)=0,停止定时器/计数器0(或定时器/计数器1)工

作。

TR0(或TR1)=1,启动定时器/计数器0(或定时器/计数器1)工

作。

可由软件置1(或清0)来启动(或关闭)定时器/计数器,使定时器/计数器开始计数。用指令SETB(或CLR)使运行控制位置1(或清0)。

【例】设置定时器1工作于方式1,定时工作方式与外部中断无关,则M1=0,

M0=1,GATE=0,因此,高4位应为0001;定时器0未用,低4位可随意置数,但低两位不可为11(因方式3时,定时器1停止计数),一般将其设为0000。因此,指令形式为:

MOV?TMOD,#10H

定时器/计数器工作方式与程序设计

通过对特殊功能寄存器TMOD中的设置M1、M0两位的设置来选择四种工作方式,定时器/计数器0、1和2的工作方式相同,方式3的设置差别较大。

工作方式0

工作方式寄存器TMOD中的M1M0为:00。定时器/计数器T0工作在方式0时,16位计数器只用了13位,即TH0的高8位和TL0的低5位,组成一个13位定时器/计数器。当TL0的低5位计满溢出时,向TH0进位,TH0溢出时,对中断标志位

TF0置位,向CPU申请中断。定时器/计数器0方式0的逻辑结构如图所示。

1.工作在定时方式

C/=0,定时器对机器周期计数。定时器在工作前,应先对13位的计数器赋值,开始计数时,在初值的基础上进行减1计数。

定时时间的计算公式为:

定时时间=(213–计数初值)×晶振周期×12

或定时时间=(213–计数初值)×机器周期

若晶振频率为12MHz,则最短定时时间为

[213-(213-1)]×(1/12)×10-6×12=1 μs

最长定时时间为

(213-0)×(1/12)×10-6×12=8 192 μs

2.工作在计数方式

C/=1,13位计数器对外部输入信号进行加1计数。

利用由0变为1时,开始计数,由1变为0时,停止计数,可以测量在端出现的正脉冲的宽度。计数值的范围是1~213=8192 (个外部脉冲)。

【例】假设AT89S52单片机晶振频率为12MHz,要求定时时间8ms,使用定时器T0,工作方式0,计算定时器初值X。

解:∵t =(213–X)×机器周期

当单片机晶振频率为12MHz时,机器周期=1μs

∴8×103=(213–X)×1

X = 8192-8000 = 192

转换成二进制数为:

【例】假设AT89S52单片机晶振频率为12MHz,所需定时时间为250μs,当T0工作在方式0时T0计数器的初值是多少

解:∵t =(213–X)×机器周期

当单片机晶振频率为12MHz时,机器周期=1μs

∴250 =(213–X0)×1

X0= 8192-250 = 7942

转换成二进制数为:

【例】利用T0方式0产生1ms的定时,在引脚上输出周期为2ms的方波。设单片机晶振频率fosc=12MHz。

解:(1)解题思路

要在引脚输出周期为2ms的方波,只要使每隔1ms取反一次即可。执行指令为CPL?。

(2)确定工作方式:

方式0?TMOD=00H

C/=0:T0为定时功能;(D2位)

GATE=0,只要用软件使TR0(或TR1)置1就能启动定时器T0(或T1);M1M0 = 00,工作方式0

∴TMOD的值为= 00H

~可取任意值,因T1不用,这里取0值。

使用MOV?TMOD , #00H即可设定T0的工作方式

(3)计算1 ms定时时T0的初值

机器周期T = 1/f osc×12 = 1μs

计数个数:X =1ms/lμs = 1000

设T0的计数初值为x0,则x0=(213一X)s

=8192—1000

=7192D

转换成二进制数为:

高8位低5位

将高8位装入TH0

将低5位11000 = 18H装入TL0

11

EA = 1 ,CPU开放中断;

ET0 = 1,允许T0中断;

(4)编程

可采用中断和查询两种方式编写程序。

方法一:中断方式

ORG?0000H

AJMPMAIN;转主程序MAIN

ORG000BH

AJMPIT0P;转T0中断服务程序IT0P?

ORG1000H

MAIN:MOV?SP,#60H?;设堆栈指针

MOVTH0 , #0E0H;给定时器T0送初值

MOV TMOD,#00H?;设置T0为方式0,定时MOVTL0 , #18H;送定时初值

MOV TH0,#0E0H

SETBEA;CPU开中断

SETBET0;T0允许中断

SETB TR0

;启动T0定时

HERE:SJMPHERE;等待中断

中断服务程序:

IT0P:ORG1200H;T0中断入口

MOVTL0,#18H?;重新装入计数初值

MOVTH0,#0E0H?

CPL

;输出方波

RETI

;中断返回END

方法二:查询方式

MOVTMOD,#00H?;设置T0为方式0,定时

MOVTL0,#18H?;送初值

MOVTH0,#0E0H?

SETBTR0;启动T0定时

LOOP:JBC?TF0,NEXT?;查询定时时间到否

SJMPLOOP

NEXT:MOV?TL0,#18H?;重新装入计数初值

MOV TH0,#0E0H

CPL

;输出方波

SJMPLOOP;重复循环

工作方式1

工作方式寄存器TMOD中的M1M0为:01。定时器T0工作方式1与工作方式0类同,差别在于其中的计数器的位数。工作方式1以16位计数器参与计数。

定时器/计数器0方式1的逻辑结构如图所示。

1.工作在定时方式

C/=0,定时器对机器周期计数。定时时间的计算公式为:

定时时间=(213–计数初值)×晶振周期×12

或定时时间=(213–计数初值)×机器周期

若晶振频率为12MHz,则最短定时时间为

[216-(216-1)]×(1/12)×10-6×12=1 μs

最长定时时间为

(216-0)×(1/12)×10-6×12=65 536 μs= ms

2.工作在计数方式

C/=1,16位计数器对外部输入信号进行加1计数。计数值的范围是1~216=65 536 (个外部脉冲)。

【例】假设AT89S52单片机晶振频率为12MHz,所需定时时间为10ms,当T0

工作在方式1时T0计数器的初值是多少

解:∵t =(216–X0)×机器周期

当单片机晶振频率为12MHz时,机器周期=1μs

∴10×103=(213–X0)×1

X = 65536-10000 = 55536

转换成二进制数为:

【例】假设AT89S52单片机晶振频率为12MHz,定时器T0的定时初值为9800,计算T0工作在方式1时的定时时间。

解:∵t =(216–X0)×机器周期

当单片机晶振频率为12MHz时,机器周期=1μs

∴t =(216–9800)×1

t = 65536-9800 = 55736μs

【例】用定时器T0产生50HZ的方波。由输出此方波(设时钟频率为

12MHZ)。采用中断方式。

解:50HZ的方波周期T为T = 1/50 = 20ms

可以用定时器产生10ms的定时,每隔10ms改变一次的电平,即可得到50HZ的方波。

定时器T0应工作在方式1。

(1)工作在方式1时的T0初值,根据下式计算:

t =(216–X)×机器周期

时钟频率为12MHz,则机器周期= 1μs

10×103=(216–X)× 1

X = 65536 – 10000 = 55536

转换为二进制数:

高8位低8位

高8位= 0D8H装入TH0,低8位= 0CCH装入TL0。

(2)程序

ORG0000H

AJMPMAIN

ORG000BH;T0的中断入口地址

AJMP?T0INT

ORG0100H

MAIN:MOVTMOD , #01H;设置T0为工作方式1

MOVTH0 , #0D8 H

;装入定时器初值

MOV?TL0 , #0CC H

SETBET0

;设置T0允许中断

SETBEA

;CPU开中断

SETBTR0

;启动T0

SJMP$

;等待中断

中断服务程序;

ORG?0300H

T0INT:CPL?;取反

MOV?TH0 , #0D8H;重新装入定时初值

MOV?TL0 , #0CCH

RETI

注:SETBET0

;设置T0允许中断

SETBEA

;CPU开中断

这两条指令可以等效为MOVIE , #82H。

工作方式2

定时器/计数器0方式2的逻辑结构如图所示。

工作方式寄存器TMOD中的M1M0为:10

定时器/计数器在工作方式2时,16位的计数器分成了两个独立的8位计数器TH 和TL。此时,定时器/计数器构成了一个能重复置初值的8位计数器。

其中,TL用作8位计数器,TH用来保存计数的初值。每当TL计满溢出时,自动将TH的初值再次装入TL。

1.工作在定时方式

C/=0,定时器对机器周期计数。定时时间的计算公式为:

定时时间=(28–计数初值)×晶振周期×12

或定时时间=(28–计数初值)×机器周期

若晶振频率为12MHz,则最短定时时间为

[28-(28-1)]×(1/12)×10-6×12=1 μs

最长定时时间为

(28-0)×(1/12)×10-6×12=256 μs

2.工作在计数方式

C/=1,8位计数器对外部输入信号进行加1计数。计数值的范围是1~28=256 (个外部脉冲)。

【例】利用T0方式2实现以下功能:

当T0引脚每输入一个负脉冲时,使输出一个500μs的同步脉冲。设晶振频率为6MHz,请编程实现该功能。其波形如图所示。

图例波形图

(1)确定工作方式

首先选T0为方式2,外部事件计数方式。当引脚上的电平发生负跳变时,T0计数器加1,溢出标志TF0置1;然后改变T0为500μs定时工作方式,并使输出由1变为0。T0定时到产生溢出,使引脚恢复输出高电平。T0先计数,后定时,分时操作。

根据题目要求方式控制字TMOD是:

计数时:(TMOD) = 0000 0110B = 06H

定时时:(TMOD) = 0000 0010B = 02H

(2)计算初值

机器周期T = 12/fosc = 12/6MHZ =2μs

计数时:计数个数X = 1

计数初值= (256﹣X) = (256﹣1) =255=0FFH,(TH0)=(TL0)=0FFH

定时时:计数个数X =Т/ Tm= 500μs/2μs =250

定时初值= 256﹣X = 256﹣250 = 6,

(TH0) = (TL0) = 06H?

(3)编程方法

采用查询方法

START:MOV?TMOD,#06H?;T0方式2,外部计数方式MOVTH0,#0FFH?;T0计数初值

MOVTL0,#0FFH

SETBTR0;启动T0计数

LOOPl:JBC?TF0,PTF01?;查询T0溢出标志,TF0=1时转移,

且TF0=0(查负跳变)

SJMP LOOPl

PTF01:CLR TR0?;停止计数

MOVTMOD,#02H?;T0方式2,定时

MOVTH0,#06H?;T0定时500μs初值

MOVTL0,#06H

CLR

;清0

SETBTR0;启动定时500μs

LOOP2:JBC?TF0,PTF02?;查询溢出标志,定时到TF0=l转移,

且TF0=0(第一个500μs到否) SJMPLOOP2

PTF02:SETBP1;置1(到了第一个500μs)

CLRTR0;停止计数

SJMPSTART

工作方式3

工作方式寄存器TMOD中的M1M0为:11。工作方式3仅对定时器/计数器0有效,此时,将16位的计数器分为两个独立的8位计数器TH0和TL0。当定时器/计数器0工作在方式3时,定时器/计数器1只能工作在方式0~2,并且工作在不需要中断的场合。

在一般情况下,当定时器/计数器1用作串行口波特率发生器时,定时器/计数器0才设置为工作方式3。此时常把定时器/计数器1设置为方式2,用作波特率发生器。

定时器/计数器0在方式3下的逻辑结构如图所示。

【例】设某用户系统中已使用了两个外部中断源,并置定时器T1工作在方式2,作串行口波特率发生器用。现要求再增加一个外部中断源,并由引脚输出一个5kHz 的方波。fosc=12MHz。

(1)确定工作方式

T0方式3下,TL0作计数用,而TH0可用作8位的定时器,定时控制引脚输出5kHz的方波信号。T1为方式2,定时。

TMOD是:0010 0111B = 27H

(2)计算初值

TL0初值:FFH,TH0初值X0计算如下:

∵的方波频率为5kHz,故周期

T=1/(5kHz)==200μs

∴用TH0定时100μs时,

X0=256﹣100×12/12=156

(3)程序如下:

MOV?TMOD,#27H?;T0为方式3,计数;T1为方式2,定时MOVTL0,#0FFH?;置TL0计数初值

MOVTH0,#156?;置TH0计数初值

MOVTHl,#data?;data是根据波特率要求设置的常数(即初值) MOVTLl,#data?

MOVTCON,#55H?;外中断0,外中断1边沿触发,启动T0,T1 MOV IE,#9FH?;开放全部中断

TL0溢出中断服务程序(由000BH转来)

TL0INT:MOV TL0,#0FFH?;TL0重赋初值(中断处理)

RETI

TH0溢出中断服务程序(由001BH转来)

TH0INT:MOV TH0,#156?;TH0重新装入初值

CPL

;输出波形

RETI

单片机定时器与计数器的工作方式解析

单片机定时器与计数器的工作方式解析 1 工作方式0 定时器/计数器的工作方式0称之为13位定时/计数方式。它由TL(1/0)的低5位和TH (0/1)的8位组成13位的计数器,此时TL(1/0)的高3位未用。 我们用这个图来讨论几个问题: M1M0:定时/计数器一共有四种工作方式,就是用M1M0来控制的,2位正好是四种组合。C/T:前面我们说过,定时/计数器即可作定时用也可用计数用,到底作什么用,由我们根据需要自行决定,也说是决定权在我们??编程者。如果C/T为0就是用作定时器(开关往上打),如果C/T为1就是用作计数器(开关往下打)。顺便提一下:一个定时/计数器同一时刻要么作定时用,要么作计数用,不能同时用的,这是个极普通的常识,几乎没有教材会提这一点,但很多开始学习者却会有此困惑。 GATE:看图,当我们选择了定时或计数工作方式后,定时/计数脉冲却不一定能到达计数器端,中间还有一个开关,显然这个开关不合上,计数脉冲就没法过去,那么开关什么时候过去呢?有两种情况 GATE=0,分析一下逻辑,GATE非后是1,进入或门,或门总是输出1,和或门的另一个输入端INT1无关,在这种情况下,开关的打开、合上只取决于TR1,只要TR1是1,开关就合上,计数脉冲得以畅通无阻,而如果TR1等于0则开关打开,计数脉冲无法通过,因此定时/计数是否工作,只取决于TR1。 GATE=1,在此种情况下,计数脉冲通路上的开关不仅要由TR1来控制,而且还要受到INT1管脚的控制,只有TR1为1,且INT1管脚也是高电平,开关才合上,计数脉冲才得以通过。这个特性能用来测量一个信号的高电平的宽度,想想看,怎么测? 为什么在这种模式下只用13位呢?干吗不用16位,这是为了和51机的前辈48系列兼容而设的一种工作式,如果你觉得用得不顺手,那就干脆用第二种工作方式。 2 工作方式1

单片机实验之定时器计数器应用实验二

一、实验目的 1、掌握定时器/计数器计数功能的使用方法。 2、掌握定时器/计数器的中断、查询使用方法。 3、掌握Proteus软件与Keil软件的使用方法。 4、掌握单片机系统的硬件和软件设计方法。 二、设计要求 1、用Proteus软件画出电路原理图,单片机的定时器/计数器以查询方式工作,设定计数功能,对外部连续周期性脉冲信号进行计数,每计满100个脉冲,则取反P1.0口线状态,在P 1.0口线上接示波器观察波形。 2、用Proteus软件画出电路原理图,单片机的定时器/计数器以中断方式工作,设定计数功能,对外部连续周期性脉冲信号进行计数,每计满200个脉冲,则取反P1.0口线状态,在P 1.0口线上接示波器观察波形。 三、电路原理图 六、实验总结 通过本实验弄清楚了定时/计数器计数功能的初始化设定(TMOD,初值的计算,被计数信号的输入点等等),掌握了查询和中断工作方式的应用。 七、思考题 1、利用定时器0,在P1.0口线上产生周期为200微秒的连续方波,利用定时器1,对 P1.0口线上波形进行计数,满50个,则取反P1.1口线状态,在P 1.1口线上接示波器观察波形。 答:程序见程序清单。

四、实验程序流程框图和程序清单。 1、定时器/计数器以查询方式工作,对外部连续周期性脉冲信号进行计数,每计满100个脉冲,则取反P1.0口线状态。 汇编程序: ORG 0000H START: LJMP MAIN ORG 0100H MAIN: MOV IE, #00H MOV TMOD, #60H MOV TH1, #9CH MOV TL1, #9CH SETB TR1 LOOP: JNB TF1, LOOP CLR TF1 CPL P1.0 AJMP LOOP END C语言程序: #include sbit Y=P1^0; void main() { EA=0; ET1=0; TMOD=0x60; TH1=0x9C; TL1=0x9C; while(1) { TR1=1; while(!TF1); TF1=0; Y=!Y; } } 开始 TMOD初始化 计数初值初始化 中断初始化 启动定时器 计数溢出 清计数溢出标志 Y N P1.0口线取反

演讲限时计时器

课程设计名称:电子技术课程设计 题目:演讲限时定时器 学期: 2013-2014学年第2学期 专业:电气自动化 班级:电气12-4 姓名:高明 学号: 1205040404 指导教师:谢国民 辽宁工程技术大学 课程设计成绩评定表

课程设计任务书 一、设计题目:演讲限时定时器 二、设计任务及:采用555定时器设计演讲限时定时器,如

果发言人演讲时间超时,定时器就会发出声响告知发言人到时。 三、设计计划 1)设计时间一周; 2)最终提交原理图或结果仿真。 四、设计要求 1)定时和控制选用555定时器; 2)限定发言时间为5分钟; 3) 设计方案要有比较环节,扬声器音调可调。 4)用绘图软件绘制原理图。 指导教师:谢国民 日期:2014年6 月21日 摘要 本设计电路分为时钟脉冲电路、预置时间电路、提示信号发生电路三部分。 1、预置时间用三个74LS160十进制计数器和适当的门电路控制的,设有5min 输入(脉冲)。它接受555多谐振荡电路的脉冲,因为是5min,所以在脉冲是1Hz的情况下,需要使三个74LS160十进制计数器达到300进制,即300s。 2、利用555构成多谐振荡电路产生所需的1Hz脉冲,提供给计数器的时钟脉冲,每记一次数走一秒。 3、提示信号发生电路主要由一片555芯片与门电路构成构成。555芯片构成声频振荡蜂鸣电路,逻辑门电路控制提示信号输入蜂鸣器,使其发出声音,提醒发

言者时间到。 关键词: 计数器 555多谐振荡器门电路 目录 1 综述 (1) 2 电路设计框图与思路 (2) 2.1 总框图设计 (2) 2.2 单元模块设计 (2)

555定时器芯片工作原理

555定时器芯片工作原理,功能及应用 -------------------------------------------------------------------------------- - 555定时器芯片工作原理,功能及应用 555定时器是一种数字电路与模拟电路相结合的中规模集成电路。该电路使用灵活、方便,只需外接少量的阻容元件就可以构成单稳态触发器和多谐振荡器等,因而广泛用于信号的产生、变换、控制与检测。 一、555定时器 555定时器产品有TTL型和CMOS型两类。TTL型产品型号的最后三位都是555,CMOS 型产品的最后四位都是7555,它们的逻辑功能和外部引线排列完全相同。 555定时器的电路如图9-28所示。它由三个阻值为5k?的电阻组成的分压器、两个电压比较器C1和C2、基本RS触发器、放电晶体管T、与非门和反相器组成。 电压比较器的功能:比较两个电压的大小(用输出电压的高或低电平,表示两个输入电压的大小关系): 当”+”输入端电压高于”-”输入端时,电压比较器输出为高电平; 当”+”输入端电压低于”-”输入端时,电压比较器输出为低电平 图9-28 555定时器原理图 分压器为两个电压比较器C1、C2提供参考电压。如5端悬空,则比较器C1的参考电压为,加在同相端;C2的参考电压为,加在反相端。 是复位输入端。当=0时,基本RS触发器被置0,晶体管T导通,输出端u0为低电平。正常工作时,=1。

u11和u12分别为6端和2端的输入电压。当u11>,u12> 时,C1输出为低电平,C2输出为高电平,即=0,=1,基本RS触发器被置0,晶体管T导通,输出端u0为低电平。 当u11<,u12< 时,C1输出为高电平,C2输出为低电平,=1,=0,基本RS触发器被置1,晶体管T截止,输出端u0为高电平。 当u11<,u12> 时,基本RS触发器状态不变,电路亦保持原状态不变。 综上所述,可得555定时器功能如表9-13所示。 表9-13 555定时器功能表 输入输出 复位u11 u12 输出u0 晶体管T 0 ××0 导通 1 > > 0 导通 1 < < 1 截止 1 < > 保持保持 一、555定时器的应用 1.单稳态电路 前面介绍的双稳态触发器具有两个稳态的输出状态和,且两个状态始终相反。而单稳态触发器只有一个稳态状态。在未加触发信号之前,触发器处于稳定状态,经触发后,触发器由稳定状态翻转为暂稳状态,暂稳状态保持一段时间后,又会自动翻转回原来的稳定状态。单稳态触发器一般用于延时和脉冲整形电路。 单稳态触发器电路的构成形式很多。图9-29(a)所示为用555定时器构成的单稳态触发器,R、C为外接元件,触发脉冲u1由2端输入。5端不用时一般通过0.01uF电容接地,以防干扰。下面对照图9-29(b)进行分析。

单片机定时器实验

单片机定时器实验

实验三单片机内部定时器应用 实验目的 1、理解单片机内部定时器的工作原理及使用方法 2、了解单片机定时中断程序的编写和调试方法 3、掌握定时器的基本使用方法 实验仪器 单片机开发板、万利仿真机、稳压电源、计算机 实验原理 1、单片机定时器的工原理 MCS-51 单片机内部有两个16 位可编程的定时器/计数器T0 和T1。它们即可用作定时器方式,又可用作计数器方式。其中T0 由TH0 和TL0 计数器构成;T1 由TH1 和TL1 计数器构成。 工作于定时器方式时,通过对机器周期(新型51单片机可以对振荡周期计数)的计数,即每一个机器周期定时器加1,来实现定时。故系统晶振频率直接影响定时时间。如果晶振频率为

图4-8 定时控制寄存器数据格式编写程序控制这两个寄存器就可以控制定时器的运行方式。 单片机内部定时器/计数器的使用,简而概之:(1)如需用中断,则将EA和相关中断控制位置1;(2)根据需要设置工作方式,即对TMOD设置;(3)然后启动计数,即对TR0或TR1置1。(4)如使用中断,则计数溢出后硬件会自动转入中断入口地址;如使用查询,则必须对溢出中断标志位TF0或TF1进行判断。 2、用定时器编写一个秒计时器 假设系统使用的晶振频率为12MH Z,即每个机器周期为1us。如使用方式1,则定时时间最长是216×1us=65536us=65.536ms,小于1s。故必须设置一个软件计数单元,即假设定时器定时中断时间为50ms,则必须定时中断20次才达到1s并对秒计时单元加1,20即为软件计数次数。最后再把秒计时单元的值转成显示数码送显示缓冲区。

单片机定时器详解

一、MCS-51单片机的定时器/计数器概念 单片机中的定时器和计数器其实是同一个物理的电子元件,只不过计数器记录的是单片机外部发生的事情(接受的是外部脉冲),而定时器则是由单片机自身提供的一个非常稳定的计数器,这个稳定的计数器就是单片机上连接的晶振部件;MCS-51单片机的晶振经过12分频之后提供给单片机的只有1MHZ的稳定脉冲;晶振的频率是非常准确的,所以单片机的计数脉冲之间的时间间隔也是非常准确的,这个准确的时间间隔是1微秒; MCS-51单片机外接的是12MHZ的晶振(实际上是,所以,MCS-51单片机内部的工作频率(时钟脉冲频率)是12MHZ/12=1MHZ=1000000次/秒=1000000条指令/秒=1000000次/1000000微秒=1次/微秒=1条指令/微秒;也就是说,晶振振荡一次,就会给单片机提供一个时钟脉冲,花费的时间是1微秒,此时,CPU会执行一条指令,经历一个机器周期;即:1个时钟脉冲=1个机器周期=1微秒=1条指令; 注:个人PC机上的CPU主频是晶振经过倍频之后的频率,这一点恰好与MCS-51单片机的相反,MCS-51单片机的主频是晶振经过分频之后的频率; 总之:MCS-51单片机中的时间概念就是通过计数脉冲的个数来测量出来的;1个脉冲=1微秒=1条指令=1个机器周期; MCS-51单片机定时器/计数器的简单结构图: 8051系列单片机有两个定时器:T0和T1,分别称为定时器和定时器T1,这两个定时器都是16位的定时器/计数器;8052系列单片机增加了第三个定时器/计数器T2;它们都有定时或事件计数功能,常用于时间控制、延时、对外部时间计数和检测等场合; 二、定时器/计数器的结构

4实验四 单片机定时器的使用

姓名:学号:日期: 实验四单片机定时器的使用 一、实验名称:单片机定时器的使用 二、实验目的 1.掌握在Keil环境下建立项目、添加、保存源文件文件、编译源程序的方法; 2.掌握运行、步进、步越、运行到光标处等几种调试程序的方法; 3.掌握在Proteus环境下建立文件原理图的方法; 4.实现Proteus与Keil联调软件仿真。 三、使用仪器设备编号、部件及备件 1.实验室电脑; 2.单片机实验箱。 四、实验过程及数据、现象记录 1.在Proteus环境下建立如下仿真原理图,并保存为文件; 原理图中常用库元件的名称: 无极性电容:CAP 极性电容:CAP-ELEC 单片机:AT89C51 晶体振荡器:CRYSTAL 电阻:RES 按键:BUTTON 发光二极管:红色LED-RED 绿色LED-GREEN 蓝色LED-BLUE 黄色LED-YELLOW 2.在Keil环境下建立源程序并保存为.ASM文件,生成.HEX文件; 参考程序如下: ORG 0000H LJMP MAIN ORG H ;定时器T0的入口地址 LJMP TIMER0 MAIN: MOV TMOD,#01H

MOV R0,#05H MOV TH0,# H ;定时器的初值 MOV TL0,# H SETB ;开定时器T0的中断 SETB ;开CPU的中断 SETB ;启动定时器T0 MOV A,#01H LOOP: MOV P1,A RL A CJNE R0,#0,$ MOV R0,#05H SJMP LOOP TIMER0: DEC R0 MOV TH0,# H ;重装初值 MOV TL0,# H ;重装初值 RETI END 将以上程序补充完整,流水时间间隔为250ms。 3.将.HEX文件导入仿真图,运行并观察结果; 4.利用Keil软件将程序下载至实验箱,进行硬件仿真,观察实验结果。 五、实验数据分析、误差分析、现象分析 现象:实现流水灯,时间间隔250ms,由定时器实现定时250ms。 六、回答思考题 1.定时器由几种工作模式,各种模式的最大定时时间是多少? 2.各种模式下初值怎么计算?

倒计时定时器设计

一、倒计时定时器设计 1、20秒、30分钟到计时计数器 1、1 设计要求: 20s倒计时定时器:倒计时由按钮启动,计时精度0.1s,在数码管中显示倒计时值。 30分钟倒计时定时器:倒计时由按钮启动,计时精度1s,在数码管中显示倒计时值。 1、2设计的作用目的: 此次设计是我们更进一步了解基本电路的设计流程,提高自己的设计理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。通过解决实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后从事生产和科研工作打下一定的基础。本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。本次设计的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还对单片机的接口技术,中断技术,存储方式和控制方式作更深层次的了解。 1、3问题分析: 在电子技术飞速发展的今天,电子产品的人性化和智能化已经非常成熟,其发展前景仍然不可估量。如今的人们需求的是一种能给自己带来方便的电子产品,当然最好是人性化和智能化的,如何能做到智能化呢?单片机的引入就是一个很好的例子。单片机又称单片微型计算机,也称为微控制器,是微型计算机的一个重要分支,单片机是20世纪70年代中期发展起来的一种大规模集成电路芯片,是集CPU,RAM,ROM,I/O接口和中断系统于同一硅片上的器件。单片机的诞生标志着计算机正式形成了通过计算机系统和嵌入式计算机系统两个分支。目

通电延时定时器(TON)指令工作原理

**************************************************************************(1)通电延时定时器(TON )指令工作原理 程序及时序分析如图4-41所示。当I0.0接通时即使能端(IN )输入有效时,驱动T37开始计时,当前值从0开始递增,计时到设定值PT 时,T37 状态位置1,其常开触点T37接通,驱动Q0.0输出,其后当前值仍增加,但不影响状态位。当前值的最大值为32767。当I0.0分断时,使能端无效时,T37复位,当前值清0,状态位也清0,即回复原始状态。若I0.0接通时间未到设定值就断开,T37则立即复位,Q0.0不会有输出。 (2)记忆型通电延时定时器(TONR )指令工作原理 使能端(IN )输入有效时(接通),定时器开始计时,当前值递增,当前值大于或等于预置值(PT )时,输出状态位置1。使能端输入无效(断开)时,当前值保持(记忆),使能端(IN )再次接通有效时,在原记忆值的基础上递增计时。 注意:TONR 记忆型通电延时型定时器采用线圈复位指令R 进行复位操作,当复位线圈有效时,定时器当前位清零,输出状态位置0。 程序分析如图4-42所示。如T3,当输入IN 为1时,定时器计时;当IN 为0时,其当前值保持并不复位;下次IN 再为1时,T3当前值从原保持值开始往上加,将当前值与设定值PT 比较,当前值大于等于设定值时,T3状态位置1,驱动Q0.0有输出,以后即使IN 再为0,也不会使T3复位,要使T3复位,必须使用复位指令。 PT I0.0 T37当前值 Q0.0 最大值32767 图4-41 通电延时定时器工作原理分析 LD I0.0 TON T37,100 LD T37 = Q0.0

C51单片机定时计数器应用编程归纳总结

C51 T and C ● 80C51单片机内部有两个定时/计数器T0和T1,其核心是计数器,基本功能是加1。 ● 对外部事件脉冲(下降沿)计数,是计数器;对片内机周脉冲计数,是定时器。 ● 计数器由二个8位计数器组成。 ● 定时时间和计数值可以编程设定,其方法是在计数器内设置一个初值,然后加1计满后溢出。调整计数器初值,可调整从初值到计满溢出的数值,即调整了定时时间和计数值。 ● 定时/计数器作为计数器时,外部事件脉冲必须从规定的引脚Tx(P3.4、P3.5)输入。且外部脉冲的最高频率不能超过时钟频率的1/24 一、定时/计数器的结构 定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD 是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON 是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。 二、定时/计数器的工作原理 加1计数器输入的计数脉冲有两个来源,一个是由系统的时钟振荡器输出脉冲经12分频后送来;一个是T0或T1引脚输入的外部脉冲源。每来一个脉冲计数器加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON 中TF0或TF1置1,向CPU 发出中断请求(定时/计数器中断允许时)。如果定时/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。 可见,由溢出时计数器的值减去计数初值才是加1计数器的计数值。 设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计数值N 乘以机器周期Tcy 就是定时时间t 。 设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。在每个机器周期的S5P2期间采样T0、T1引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。当晶振频率为12MHz 时,最高计数频率不超过1/2MHz ,即计数脉冲的周期要大于2 s 。

三位数显示计时器定时器数电课程设计

文档大全 沈阳航空航天大学 课程设计三位数字显示计时器定时器设计 班级 学号 学生姓名 指导教师

文档大全 沈阳航空航天大学 课程设计任务书 课程名称电子线路课程设计 课程设计题目三位数字显示计时器定时器设计 课程设计的内容及要求: 一、设计说明与技术指标 设计一个三位数字显示计时器、定时器电路,技术指标如下: ①计时、定时能够任意启停,保持计时、定时结果; ②开机自动复位; ③最大显示时间为9分59秒; ④设置时间,定时报警; 二、设计要求 1.在选择器件时,应考虑成本。 2.根据技术指标,通过分析计算确定电路和元器件参数。 3.画出电路原理图(元器件标准化,电路图规范化)。 三、实验要求 1.根据技术指标制定实验方案;验证所设计的电路,用软件仿真。 2.进行实验数据处理和分析。 四、推荐参考资料 1. 童诗白,华成英主编.模拟电子技术基础.[M]北京:高等教育出版社,2006年 五、按照要求撰写课程设计报告

文档大全 成绩评定表: 序号 评定项目 评分成绩 1 设计方案正确,具有可行性,创新性( 15分) 2 设计结果可信(例如:系统分析、仿真结果)(15分) 3 态度认真,遵守纪律(15分) 4 设计报告的规范化、参考文献充分(不少于5篇)(25分) 5 答辩(30分) 总分 最终评定成绩(以优、良、中、及格、不及格评定) 指导教师签字: 2016年 12月 31日

文档大全 一、概述 此次课设题目为及时定时系统,计时器和定时器在人们日常生活中有着广泛的应用, 本次课程就是设计利用555定时器以及数字逻辑芯片和数码管实现数字电子计时器和定时器功能,能够满足基本的功能要求,电路要求由可控脉冲发生器、计数电路,显示数码管电路以及报警电路组成。旨在通过这次课程设计实现知识的活学活用,能够将知识运用到实践中去,数字电路分为组合电路和逻辑电路,而本次课设则是基于对逻辑同步或者异步知识的掌握,能够根据题目选用相应的芯片,设计相应的电路,是本次实验最大的目的。 二、方案论证 方案一:使用数字电路的原理设计本方案,方案一利用555定时器以及数字逻辑芯片和数码管实现数字电子计时器和定时器功能,电路要求由可控脉冲发生器、计数电路,显示数码管电路以及报警电路组成。使用555多谐振荡器产生脉冲信号,使用数字芯片进行计数,通过LED 进行报警最后使用显示译码器显示计数。所以一共有四部分组成。 图1 总体电路的原理框图 方案二: 方案二采用单片机编程进行设计实现计时器或者定时器的设计。

单片机定时器的使用

哈尔滨理工大学荣成学院 单片机原理及应用Protues 仿真实验 班级:电气18 学号: 姓名:

日期: 2020.06.03 实验五单片机定时器的使用 一、实验名称:单片机定时器的使用 二、实验目的 1.掌握在Keil环境下建立项目、添加、保存源文件文件、编译源程序的方法; 2.掌握运行、步进、步越、运行到光标处等几种调试程序的方法; 3.掌握在Proteus环境下建立文件原理图的方法; 4.实现Proteus与Keil联调软件仿真。 三、使用仪器设备编号、部件及备件 1.实验室电脑; 2.单片机实验箱。 四、实验过程及数据、现象记录 在Proteus 环境下建立如下仿真原理图,并保存为文件;

原理图中常用库元件的名称: 无极性电容:CAP 极性电容:CAP-ELEC 单片机:AT89C51 晶体振荡器:CRYSTAL 电阻:RES 按键:BUTTON 发光二极管:红色LED-RED 绿色LED-GREEN 蓝色LED-BLUE 黄色LED-YELLOW

在Keil环境下建立源程序并保存为.ASM文件,生成.HEX文件;汇编语言参考程序如下: ORG 0000H LJMP MAIN ORG H ;定时器T0的入口地址LJMP TIMER0 MAIN: MOV TMOD,#01H MOV R0,#05H MOV TH0,# H ;定时器的初值MOV TL0,# H SETB ;开定时器T0的中断SETB ;开CPU的中断SETB ;启动定时器T0 MOV A,#01H LOOP: MOV P1,A RL A CJNE R0,#0,$ MOV R0,#05H SJMP LOOP TIMER0: DEC R0 MOV TH0,# H ; MOV TL0,# H ; RETI END 将以上程序补充完整,流水时间间隔为250ms。#include #include #define uchar unsigned char #define uint unsigned int uchar i=0; void int_timer0()interrupt 1 { i++; if(i==5) { i=0; P1=_crol_(P1,1); } TH0=0x3c; TL0=0xb0; } void main() { TMOD=0x01; TH0=0x3c; TL0=0xb0; ET0=1; EA=1; TR0=1; P1=0xfe; while(1); } 将.HEX文件导入仿真图,运行并观察结果;

定时器的结构和工作原理

13.1 555定时器的结构和工作原理本节重点: (1)脉冲的基本知识 (2)555电路的组成结构和工作原理 (3)555芯片引脚图 (4)555电路功能表 (5)555电路的典型应用 本节难点: (1)555的内部电路组成和工作原理 (2)555电路的典型应用 引入:555定时器电路是一种中规模集成定时器,目前应用十分广泛。通常只需外接几个阻容元件,就可以构成各种不同用途的脉冲电路,如多谐振荡器、单稳态触发器以及施密特触发器等。555定时电路有TTL集成定时电路和CMOS集成定时电路,它们的逻辑功能与外引线排列都完全相同。双极型产品型号最后数码为555,CMOS型产品型号最后数码为7555。 一、555电路的结构组成和工作原理 (1)电路组成及其引脚

(2)555的工作原理 它含有两个电压比较器,一个基本RS 触发器,一个放电开关T ,比较器 的参考电压由三只5K Ω的电阻器构成分压,它们分别使高电平比较器C1同相比 较端和低电平比较器C2的反相输入端的参考电平为Vcc 32和Vcc 3 1 。C1和C2的 输出端控制RS 触发器状态和放电管开关状态。当输入信号输入并超过Vcc 32 时, 触发器复位,555的输出端3脚输出低电平,同时放电,开关管导通;当输入信 号自2脚输入并低于Vcc 31 时,触发器置位,555的3脚输出高电平,同时放电, 开关管截止。 D R 是复位端,当其为0时,555输出低电平。平时该端开路或接Vcc 。 Vco 是控制电压端(5脚),平时输出Vcc 32 作为比较器A1的参考电平,当5 脚外接一个输入电压,即改变了比较器的参考电平,从而实现对输出的另一种控制,在不接外加电压时,通常接一个0.01F μ的电容器到地,起滤波作用,以消除外来的干扰,以确保参考电平的稳定。 T 为放电管,当T 导通时,将给接于脚7的电容器提供低阻放电电路. (3)555电路的引脚功能 二、555电路的应用 (1)用555电路构成施密特触发器

倒计时定时器电路设计

目录 摘要 (1) 第1章概述 (2) 第2章电路设计方案 (3) 2.1 总体电路设计方案 (3) 2.2 单元功能模块设计 (4) 2.2.1 秒信号发生器 (4) 2.2.260分频器电路设计 (5) 2.2.3 减法计数器 (6) 2.2.4 译码显示电路 (9) 2.2.5 执行电路 (11) 第3章整机电路原理 (13) 第4章仿真 (14) 总结 (16) 致谢 (17) 参考文献 (18) 附录1电路原理图 (19) 附录2仿真图 (20)

摘要 本设计主要由减法计数器、译码显示器、秒信号发生器、分频器、执行路等构成,能实现倒计时、定时和控制执行电路工作的功能。 倒计时计数末了时,继电器动作,控制用电器动作。其中时钟信号是由多谐振荡器产生的1Hz秒脉冲信号,而且秒脉冲信号可以通过分频器产生出1/60Hz的分脉冲信号,然后通过开关选择秒脉冲或分脉冲信号通过开关选择输入电路,对倒计时计数器进行触发,计数器由置数开关输入的预置数开始进行计数,其中数字由译码数码管显示,直到倒计时末了,产生信号使继电器工作,从而通过控制开关控制受控电器的开或关。 所以,此设计相当于构造了一个电器的控制开关,能够灵活定时电器的工作时间,从而使电器的开关更加方便。 关键词计数器;译码器;显示器;分频器

第1章概述 倒计时计数器的用途很广泛。它可以用作定时,控制被定时电器的工作状态,实现定时开或者定时关,最长定时时间为99分钟。他还可以用做倒记时记数,最长记时时间为99秒,而且有二位数码管显示记数状态,可以灵活的对受控电器进行定时开关。 倒计时计时器的核心器件是可预制数减计数器IC3、IC4,其初始数由拨码开关S1、S2设定,其输出状态由BCD码七段译码器IC1、IC2译码后驱动LED数码管显示。门电路D1、D2产生秒信号脉冲,以及经IC5等60分频后得到的分信号脉冲。由开关S4选择后作为时钟脉冲送入减计数器的CP端。 当按下启动按钮S3后,S1、S2设定的预置数进入减计数器,数码管显示出该预置数,然后计数器就在时钟脉冲CP的作用下减计数,数码管做同步显示。当倒计时结束,减计数器显示为00时,输出高电平使VT1、VT2导通,继电器K1吸合,其常开接点K1-1闭合,接通被控电器,被控电器开始工作;其常闭接点K1-2断开,切断被控电器,使此工作结束工作。同时,自带音源讯响器发出提示音。 在这个数字化的时代,倒计时定时器随处可见,在人们的生活和工作中,倒计时定时器的应用也越来越广泛。在医学设备、在交通方面、比赛场合等,特别是在一些数字化、智能化设备上倒计时定时器得到了很好的应用。我相信,倒计时定时器的发展前景会越来越好。

定时器工作原理

定时器工作原理 通电延时型。只要在定时的时间段内(即1分钟)定时器一直得电,则常开触电就会闭合,只要定时器不断电常开触电就会一直闭合。定时器断电则常开触电断开 1,定时器/计数器的结构与功能 主要介绍定时器0(T0)和定时器1(T1)的结构与功能。图6.1是定时器/计数器的结构框图。由图可知,定时器/计数器由定时器0、定时器1、定时器方式寄存器TMOD和定时器控制寄存器TCON组成。 定时器0,定时器1是16位加法计数器,分别由两个8位专用寄存器组成:定时器0由TH0和TL0组成,定时器1由TH1和TL1组成。 图6.1 定时器/计数器结构框图 TL0、TL1、TH0、TH1的访问地址依次为8AH~8DH,每个寄存器均可单独访问。定时器0或定时器1用作计数器时,对芯片引脚T0(P3.4)或T1(P3.5)上输入的脉冲计数,每输入一个脉冲,加法计数器加1;其用作定时器时,对内部机器周期脉冲计数,由于机器周期是定值,故计数值确定时,时间也随之确定。 TMOD、TCON与定时器0、定时器1间通过内部总线及逻辑电路连接,TMOD 用于设置定时器的工作方式,TCON用于控制定时器的启动与停止。 6.1.1 计数功能 计数方式时,T的功能是计来自T0(P3.4)T1(P3.5)的外部脉冲信号的个数。 输入脉冲由1变0的下降沿时,计数器的值增加1直到回零产生溢出中断,表示计数已达预期个数。外部输入信号的下降沿将触发计数,识别一个从“1”到“0”的跳变需2个机器周期,所以,对外部输入信号最高的计数速率是晶振频率的1/24。若晶振频率为6MHz,则计数脉冲频率应低于1/4MHz。当计数器满后,再来一个计数脉冲,计数器全部回0,这就是溢出。 脉冲的计数长度与计数器预先装入的初值有关。初值越大,计数长度越小;初值越小,计数长度越大。最大计数长度为65536(216)个脉冲(初值为0)。 6.1.2 定时方式 定时方式时,T记录单片机内部振荡器输出的脉冲(机器周期信号)个数。 每一个机器周期使T0或T1的计数器增加1,直至计满回零自动产生溢出中断请求。 定时器的定时时间不仅与定时器的初值有关,而且还与系统的时钟频率有关。在机器周期一定的情况下,初值越大,定时时间越短;初值越小,定时时间越长。最长的定时时间为65536(216)个机器周期(初值为0)。

单片机定时器的使用总结

单片机定时器的使用 第一部分:51系列定时器 定时/计数器0 和定时/计数器1都有4种定时模式。 16位定时器对内部机器周期进行技术,机器周期加1,定时器值加1,1MHZ 模式下,一个机器周期为1us 。 定时器工作模式寄存器TMOD,不可位寻址,需整体赋值,高4位用于定时器1,第四位用于定时器0。 C/T:为定时器功能选择位,C/T=0对机器周期计数,C/T=1,对外部脉冲计数。 GATE:门控位,GATE=0,软件置位TRn即可启动计时器,GATE=1需外部中断引脚为高电平时才能软件置位TRn启动计时器,一般取GATE=0。 定时器控制寄存器TCON TFn:Tn溢出标志位,当定时器溢出时,硬件置位TFn,中断使能的情况下,申请中断,CPU响应中断后,硬件自动清除TFn。中断屏蔽时,该位一般作为软件查询标志,由于不进入中断程序,硬件不会自动清除标志位,可软件清除。 TRn:计时器启动控制位,软件置位TRn即可启动定时器,软件清除TRn 关闭标志位。 IEn:外部中断请求标志位。 ITn:外部中断出发模式控制位,ITn=0为低电平触发,ITn=1为下降沿触发。中断允许控制寄存器IE EA(IE.7):全局中断控制位。EA=1开全局中断,EA=0关闭全局中断。 IE.6无意义。 ETn:定时器中断使能控制位。置位允许中断,清除禁止中断。 ES:串行接收/发送中断控制位,置位允许中断。 EXn:外部中断使能控制位。置1允许,清0禁止。 中断优先级控制寄存器IP,复位后为00H IP.6,IP.7保留,无意义。 PT2:定时器2中断优先级控制,置1设为高优先级,清0置位低优先级。 PS:串行中断优先级控制位。 PT1/0:定时器1/0优先级控制位,置1高,清0低。 PXn:外部中断优先级控制位。 当有同级中断同时响应,按IE0—>TF0—>IE1—>TF1—IE0—>RI+TI—>TF2顺序依次响应。

课程设计报告:数字式计时器电路555定时器

目录 目录 (1) 1.系统设计思路与总体方案 (2) 1.1 设计思路与流程图 (2) 2.Multisim软件的简介 (3) 2.1Multisim概貌及特点 (3) 3.555定时器,CD4518和CD4011介绍 (7) 3.1 555定时器 (7) 3.2 CD4518引脚功能 (11) 3.3 CD4011引脚图 (12) 4. 数字逻辑,振荡器,计数器和显示电路图 (14) 4.1数字逻辑模块 (14) 4.2振荡器模块 (14) 4.3 计数器模块 (19) 4.4 显示器模块 (20) 5. 电路的总体设计与调试 (20) 5.1 总体电路原理图 (20) 5.2总体电路工作原理 (21) 6.课程设计感受 (22) 6.1 课程设计中的收获和体会 (22) 7.附录与文献 (24)

7.1附录 (24) 7.2参考文献 (25) 1.系统设计思路与总体方案 1.1 设计思路与流程图 根据任务书可以知道本课题是一个2位数字显示计数器,是一个十进制计数器组合,本质上就是一计时器。通过一个时基电路产生一定频率脉冲,将脉冲信号输入低位的计数器输入端,通过一级级的进位,从而达到计数。从而完成此课题,我们可以将这整个计数系统,分为几个模块进行分析。 (1).数字逻辑控制模块。通过使用门电路来控制计时器进位及清零。 (2).脉冲信号产生模块。由一个振荡电路来产生一个固定频率的脉冲信号,作为计时器的时基信号。 (3).计时数计数模块。接收计时及中断信号脉冲,从而控制计数器计数,且有清零功能,该模块选用十进制计数器。 (2).译码显示模块。该模块要显示00到99的数字,选用十进制计数器的基础上,通过它们之间的级联,最终显示相应数字。 该数字式定时器,需要用到555定时器,由此产生振荡信号,在数字逻辑电路的控制下,由计数器计数,最后在数码管上显示出来,画为流程图如下:

单片机定时器习题

单片机定时器/计数器、中断和串行口习题 一、填空题 1、若要启动定时器T0开始计数,则应将TR0的值设置为 1 。 2、定时器T1工作在方式0时,其定时时间为(8192-定时器初值)*2us 。方式1时定时时间又为(65536-定时器初值)*2us 。 3、串行通信有异步通信和同步通信两种基本通讯方式。 4、波特率是指每秒钟传递信息的位数。 5、如果要将现有的波特率加倍,可使用指令MOV PCON,#80H 。 6、当串行口工作在方式1时,一帧信息共有10位,即起始位、8个数据位、停止位。 7、串行口工作在方式2时的波特率为fosc/32或fosc/64 。 8、外部中断1的程序入口地址是0013H 。 二、选择题 1、若要采用定时器0,方式1,如何设置TMOD__B__ A.00H B.01H C.10H D. 11H 2、单片机采用方式0时是13位计数器,它的最大定时时间是多少?_B__ A.81.92ms B.8.192ms C.65.536ms D.6.5536ms 3、以下哪项不是中断的特点? C A.分时操作 B.实时处理 C.在线编程 D.故障处理 4、外部中断响应时间至少需要__A个机器周期。 A.3 B.2 C.4 D.8 5、通过串口发送和接受数据时,在程序中使用__A___指令。 A.MOV BMOVX C.MOVC D.SW AP 6、以下哪个是中断优先级寄存器?__B A.IE B.IP C.TCON D.SCON 7、串行口中断的程序入口地址是 C 。 A 0003H B 001BH C 0023H D 000BH 三、判断题 1、8051的两个定时器T0和T1都是16位的计数器。(对) 2、单片机的计数器最高检测频率为振荡频率的1/12。(错) 3、定时/计数器的方式2具有自动装入初值的功能。(对) 4、引起中断的原因或发出中断申请的来源称为中断源。(对) 5、中断可使CPU和外设同时工作。(对) 6、定时器的特殊功能寄存器TMOD是用作中断溢出标志,并控制定时计数器的启动和停止。(错) 7、定时器控制寄存器TCON可以位寻址。(对) 8、MCS-51系列单片机的5个中断源都是可屏蔽中断。(对) 四、综合题

用定时器计数器设计一个简单的秒表

目录 摘要................................................................................................ 错误!未定义书签。 1 Proteus简介错误!未定义书签。 2 主要相关硬件介绍错误!未定义书签。 AT89C52简介错误!未定义书签。 四位数码管错误!未定义书签。 74LS139芯片介绍错误!未定义书签。 3 设计原理错误!未定义书签。 4 电路设计错误!未定义书签。 电路框图设计错误!未定义书签。 电路模块介绍错误!未定义书签。 控制电路错误!未定义书签。 译码电路错误!未定义书签。 数码管显示电路错误!未定义书签。 仿真电路图错误!未定义书签。 5 设计代码错误!未定义书签。 6 仿真图错误!未定义书签。 7 仿真结果分析错误!未定义书签。 8 实物图错误!未定义书签。 9 心得体会错误!未定义书签。 参考文献错误!未定义书签。

摘要 现在单片机的运用越来越宽泛,大到导弹的导航装置、飞机上各种仪表的控制、计算机的网络通讯与数据传输、工业自动化过程的实时控制和数据处理,小到广泛使用的各种智能IC卡、各种计时和计数器等等。本次课设我们要设计一个能显示计时状态和结果的秒表,它是基于定时器/计数器设计一个简单的秒表。 本次设计的数字电子秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。将软、硬件有机地结合起来,使得系统能够实现四位LED显示,显示时间为0~秒,计时精度为秒,能正确地进行计时,并显示计时状态和结果。其中软件系统采用汇编或者C语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,并在keil中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。 关键词:秒表,AT89C51,proteus,C语言

单片机定时器实验

实验三单片机内部定时器应用 实验目的 1、理解单片机内部定时器的工作原理及使用方法 2、了解单片机定时中断程序的编写和调试方法 3、掌握定时器的基本使用方法 实验仪器 单片机开发板、万利仿真机、稳压电源、计算机 实验原理 1、单片机定时器的工原理 MCS-51 单片机内部有两个16 位可编程的定时器/计数器T0 和T1。它们即可用作定时器方式,又可用作计数器方式。其中T0 由TH0 和TL0 计数器构成;T1 由TH1 和TL1 计数器构成。 工作于定时器方式时,通过对机器周期(新型51单片机可以对振荡周期计数)的计数,即每一个机器周期定时器加1,来实现定时。故系统晶振频率直接影响定时时间。如果晶振频率为12MHZ,则定时器每隔(1/12MHZ)×12=1us 加1。 工作于计数器方式时,对P3.4 或P3.5 管脚的负跳变(1→0)计数。它在每个机器周期的S5P2 时采样外部输入,当采样值在这个机器周期为高,在下一个机器周期为低时,计数器加1。因此需要两个机器周期来识别一个有效跳变,故最高计数频率为晶振频率的1/24。 特殊功能寄存器TMOD 用于定时器/计数器的方式控制。高4 位用于设置T1,低4 位用于设置T0。如图4-7所示。 图4-7 定时器模式控制字格式 TCON 寄存器用于定时器的计数控制和中断标志。如图4-8所示。 图4-8 定时控制寄存器数据格式 编写程序控制这两个寄存器就可以控制定时器的运行方式。 单片机内部定时器/计数器的使用,简而概之:(1)如需用中断,则将EA和相关中断控制位置1;(2)根据需要设置工作方式,即对TMOD设置;(3)然后启动计数,即对TR0或TR1置1。(4)如使用中断,则计数溢出后硬件会自动转入中断入口地址;如使用查询,则必须对溢出中断标志位TF0或TF1进行判断。

单片机定时器实验报告

( 2009 —2010 学年第二学期) 课程名称:单片机开课实验室: 2010年 5月14日 一.实验目的: 掌握定时器T0、T1的方式选择和编程方法,了解中断服务程序的设计方法,学会实时程序的调试技巧。 二.实验原理: MCS-51单片机内设置了两个可编程的16位定时器T0和T1,通过编程,可以设定为定时器和外部计数方式。T1还可以作为其串行口的波特率发生器。 定时器T0由特殊功能寄存器TL0和TH0构成,定时器T1由TH1和TL1构成,特殊功能寄存器TMOD控制定时器的工作方式,TCON控制其运行。定时器的中断由中断允许寄存器IE,中断优先权寄存器IP中的相应位进行控制。定时器T0的中断入口地址为000BH,T1的中断入口地址为001BH。 定时器的编程包括: 1)置工作方式。 2)置计数初值。 3)中断设置。 4)启动定时器。 定时器/计数器由四种工作方式,所用的计数位数不同,因此,定时计数常数也就不同。 在编写中断服务程序时,应该清楚中断响应过程:CPU执行中断服务程序之前,自动

将程序计数器PC内容(即断点地址)压入堆栈保护(但不保护状态寄存器PSW,更不保护累加器A和其它寄存器内容),然后将对应的中断矢量装入程序计数器PC使程序转向该中断矢量地址单元中以执行中断服务程序。定时器T0和T1对应的中断矢量地址分别为000BH 和001BH。 中断服务程序从矢量地址开始执行,一直到返回指令“RETI”为止。“RETI”指令的操作一方面告诉中断系统该中断服务程序已经执行完毕,另一方面把原来压入堆栈保护的断点地址从栈顶弹出,装入到程序计数器PC,使程序返回到被到中断的程序断点处,以便继续执行。 因此,我们在编写中断服务程序时注意。 1.在中断矢量地址单元放一条无条件转移指令,使中断服务程序可以灵活地安排在64K 字节程序存储器的任何空间。 2.在中断服务程序中应特别注意用软件保护现场,以免中断返回后,丢失原寄存器、累加器的信息。 3.若要使执行的当前中断程序禁止更高优先级中断,可以先用软件关闭CPU中断,或禁止某中断源中断,在返回前再开放中断。 三.实验内容: 编写并调试一个程序,用AT89C51的T0工作方式1产生1s的定时时间,作为秒计数时间,当1s产生时,秒计数加1;秒计数到60时,自动从0开始。实验电路原理如图1所示。 计算初值公式 定时模式1 th0=(216-定时时间) /256 tl0=(216-定时时间) mod 256

相关主题
文本预览
相关文档 最新文档