定时器和WDT

定时器和WDT
定时器和WDT

1、概述

MSP430F149有三个时钟源:外部LF(XT1一般为32.768K),HF(XT2一般为8M),内部DCO。从时钟系统模块可得到三种时钟信号:MCLK,SMCLK,ACLK。

上电默认状况下MCLK,SMCLK信号来自DCO,ACLK来自LF。根据官方PDF说法默认状况下DCO模块配置为RSELX=4,DCO=3,因此DCO应为1M,但示波器实测MCLK/SMCLK为680K,测试温度约25摄氏度。

标注:MCLK主时钟、SMCLK子时钟、ACLK活动时钟。

P5.4,P5.5,P5.6的第二功能分别对应MCLK,SMCLK,ACLK时钟信号,可用示波器测量。测试时发现频率后两位一直在跳动,频率稳定度很差。

MSP430系列单片机选择晶振为时钟源时,时钟周期就是晶振周期。一个机器周期=一个时钟周期,即430每个动作都能完成一个基本操作;一个指令周期=1~6个机器周期,具体根据具体指令而定。如果选择8M晶振,则一个机器周期为125ns。51单片机选择12M晶振,它的机器周期是时钟周期/12,一个机器周期为1us,可见MSP430的的速度是51的8倍。

2、使用方法概述

2.1 程序架构

一般在系统初始化关闭看门狗后要配置系统时钟,配置步骤为:

1、打开晶振;

2、等待晶振起振。清除OFIFG,延时,判断OFIFG是否为0,为0则晶振正常起振,退出判断;

3、选择MCLK/SMCLK时钟源;

uchar iq0;

BCSCTL1&=~XT2OFF; //打开XT2振荡器

do

{

IFG1 &= ~OFIFG; // 清除振荡器失效标志

for (iq0 = 0xFF; iq0 > 0; iq0--); // 延时,等待XT2起振

}

while ((IFG1 & OFIFG) != 0); // 判断XT2是否起振

BCSCTL2 =SELM_2+SELS; //选择MCLK、SMCLK为XT2

2.2 细节描述

对于DCO可以通过配置电阻和DCO得到不同的频率。电阻可配置片内或片外(DCOR一般片内),片内电阻有8中选择(RSELX),DCO有8中选择(DCOX)。

3、相关寄存器

1、DCOCTL

DCOx Bits

7-5

DCO frequency select. These bits select which of the eight discrete DCO

frequencies of the RSELx setting is selected.

2、BCSCTL0

XT2OFF Bit 7 XT2 off. This bit turns off the XT2 oscillator

0 XT2 is on

1 XT

2 is off if it is not used for MCLK or SMCLK.

RSELx Bits

2-0

Resistor Select. The internal resistor is selected in eight different steps.

The value of the resistor defines the nominal frequency. The lowest

nominal frequency is selected by setting RSELx=0.

3、BCSCTL0

SELMx Bits

7-6

Select MCLK. These bits select the MCLK source.

00 DCOCLK

01 DCOCLK

10 XT2CLK when XT2 oscillator present on-chip. LFXT1CLK when XT2

oscillator not present on-chip.

11 LFXT1CLK

SELS Bit 3 Select SMCLK. This bit selects the SMCLK source.

0 DCOCLK

1 XT2CLK when XT

2 oscillator present on-chip. LFXT1CLK when XT2

oscillator not present on-chip.

DCOR Bit 0 DCO resistor select

0 Internal resistor

1 External resistor

4、实例

4.1 配置MCLK/SMCLK

见本节2.1。

4.2配置DCO

void main(void)

{

WDTCTL = WDTPW +WDTHOLD; // Stop Watchdog Timer

DCOCTL = DCO0 + DCO1 + DCO2; // Max DCO BCSCTL1 = RSEL0 + RSEL1 + RSEL2; // XT2on, max RSEL BCSCTL2 |= SELS; // SMCLK = XT2

P5DIR |= 0x70; // P5.6,5,4 outputs P5SEL |= 0x70; // P5.6,5,5 options while(1)

{

}

}

实测DCO最低128K,最高4.58M。

1、概述

看门狗有两个作用:1、可以防止程序跑飞,若程序跑飞可让单片机复位;2、可作为间隔时间发生器,在中断中进行定期刷新显示、读取数据等对外设的操作。

2、设置

不需要看门狗时可用软件关闭,设置:WDTCTL = WDTPW + WDTHOLD;

为防止误触发操作WDTCTL需要先写入WDTPW。

作为间隔定时器时详细操作可见MSP430F149.H文件中的宏定义。

3、相关寄存器

1、WDTCTL Watchdog Timer Register

WDTPW Bits

15-8

Watchdog timer password. Always read as 069h. Must be written as 05Ah, or

a PUC will be generated.

WDTHOLD Bit 7 Watchdog timer hold. This bit stops the watchdog timer. Setting WDTHOLD= 1 when the WDT is not in use conserves power.

0 Watchdog timer is not stopped

1 Watchdog timer is stopped

WDTTMSEL Bit 4 Watchdog timer mode select

0 Watchdog mode

1 Interval timer mode

WDTCNTCL Bit 3 Watchdog timer counter clear. Setting WDTCNTCL = 1 clears the count value to 0000h. WDTCNTCL is automatically reset.

0 No action

1 WDTCNT = 0000h

2、IE1 Interrupt Enable Register 1

WDTIE Bit 0 Watchdog timer interrupt enable. This bit enables the WDTIFG interrupt for interval timer mode. It is not necessary to set this bit for watchdog mode.

Because other bits in IE1 may be used for other modules, it is recommended

to set or clear this bit using BIS.B or BIC.B instructions, rather than MOV.B

or CLR.B instructions.

0 Interrupt not enabled

1 Interrupt enabled

4、设计实例

4.1 利用WDT定时模式在中断函数中定时操作外设

说明:#define WDT_MDLY_32 (WDTPW+WDTTMSEL+WDTCNTCL)

void main(void)

{

WDTCTL = WDT_MDLY_32; // Set Watchdog Timer interval to ~30ms IE1 |= WDTIE; // Enable WDT interrupt

P2DIR |= 0x01; // Set P1.0 to output direction

_BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt

}

// Watchdog Timer interrupt service routine

#pragma vector=WDT_VECTOR

__interrupt void watchdog_timer(void)

{

P2OUT ^= 0x01; // Toggle P1.0 using exclusive-OR }

4.2 利用WDT定时模式延时

WDTCTL = WDT_ADLY_1000;//延时1000ms

//延时2s

for(i = 0; i < 3; i++)

{

IFG1 &= ~WDTIFG;

while(!(IFG1 & WDTIFG));

}

IFG1 &= ~WDTIFG;

#include

typedef unsigned char uchar;

uchar step = 0xff;

void main( void )

{

uchar i;

WDTCTL = WDTPW + WDTHOLD; //关狗

P1DIR = 0XFF;P1OUT = 0XFF; //关闭所有I/O口

P2DIR = 0XFF;P2OUT = 0XFF;

P3DIR = 0XFF;P3OUT = 0XFF;

P4DIR = 0XFF;P4OUT = 0XFF;

P5DIR = 0XFF;P5OUT = 0XFF;

P6DIR = 0XFF;P6OUT = 0XFF;

BCSCTL1 &= ~XT2OFF; //打开XT2高频晶体振荡器

do

{

IFG1 &= ~OFIFG; //清除晶振失败标志

for (i = 0xFF; i > 0; i--); //等待8MHz晶体起振

}

while ((IFG1 & OFIFG)); //晶振失效标志仍然存在?

BCSCTL2 |= SELM_2 + SELS; //MCLK和SMCLK选择高频晶振

TACCTL0 |= CCIE; //使能比较中断

TACTL |= TASSEL_2 + ID_3 ; //计数时钟选择SMLK=8MHz,1/8分频后为1MHz

TBCCR0 = 4096*2 - 1; //周期两秒

TBCCTL0 |= CCIE;

TBCTL |= TBSSEL_1 + ID_3 + MC_1; //时钟源ACLK/8,up mode

P6DIR |= BIT7; //蜂鸣器对应IO设置为输出

P2DIR = 0xff;

P2OUT = 0xff;

_EINT();

LPM1;

}

#pragma vector=TIMERA0_VECTOR

__interrupt void Timer_A (void)

{

P6OUT ^= BIT7; // Toggle P6.7

}

#pragma vector=TIMERB0_VECTOR

__interrupt void Timer_B (void)

{

if(step == 0xff) //up mode

TACTL |= MC_1;

step++;

switch(step)

{

case 0: TACCR0 = 5000; P2OUT = ~1; break; // 100Hz case 1: TACCR0 = 2500; P2OUT = ~2; break; // 200Hz case 2: TACCR0 = 1250; P2OUT = ~3; break; // 400Hz case 3: TACCR0 = 625; P2OUT = ~4; break; // 800Hz case 4: TACCR0 = 500; P2OUT = ~5; break; // 1KHz case 5: TACCR0 = 250; P2OUT = ~6; break; // 2KHz case 6: TACCR0 = 167; P2OUT = ~7; break; // 3KHz case 7: TACCR0 = 125; P2OUT = ~8; break; // 4KHz case 8: TACCR0 = 100; P2OUT = ~9; break; // 5KHz case 9: TACCR0 = 83; P2OUT = ~10; break; // 6KHz case 10: TACCR0 = 71; P2OUT = ~11; break; // 7KHz case 11: TACCR0 = 63; P2OUT = ~12; break; // 8KHz case 12: TACCR0 = 56; P2OUT = ~13; break; // 9KHz case 13: TACCR0 = 50; P2OUT = ~14; break; // 10KHz case 14: TACCR0 = 33; P2OUT = ~15; break; // 15KHz case 15: TACCR0 = 25; P2OUT = ~16; break; // 20KHz case 16: step = 0xff; // 循环播放

}

}

专用定时器的设计

一种基于单片机的多功能定时器的设计摘要与关键词:定时器、 目录:1.设计任务 2.方案设计与论证 3.硬件电路设计 3.1 STC单片机的最小系统 3.2 LED显示与单片机接口 3.3 发光二极管、按键、继电器与单片机接口 4.软件设计 4.1 发光二极管指示程序 4.2 键扫描程序 4.3 数码管的显示程序 5.系统调试 6.电路原理图 7.源程序 8.主要参考文献 前言 正文 结论 致谢 附录 参考文献

1.1.设计任务 设计一个基于单片机控制的专用定时器。要求定时器可以实现三个时间的显示,而且每个时间的初值都可以改变,独立完成系统的分析、设计和程序编写,记录开发过程中的问题及解决方法,要有设计过程和原理图,并自行设计满足设计任务的稳压电源。 设计主要指标参数: (1)定时时间1。1S~99S,可调。 (2)定时时间2。1S~99S,可调。 (3)定时时间3。1min~99min,可调。 (4)所有时间数字均可调。 (5)用LED数码管显示剩余时间。 1.2设计意义 近年来随着科技的飞速发展,单片机的应用正不断地走向深入,同时带动传统控制检测的日新月异地更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,根据具体硬件结构以及具体应用对象的特点,与软件相结合,加以完善。单片机之所以在工业控制中有大量的应用,就在于它有独特的定时、计数功能。在工业检测、控制中,许多场合都要用到计数或定时的功能。例如,对外部脉冲进行计数、产生精确的定时时间等。人类最早使用的定时工具是沙漏或水漏,但在钟表诞生发展成熟之后,人们开始尝试使用这种全新的计时工具来改进定时器,达到准确控制时间的目的。 “定时器”总的来说有两种类型。一种是基于模拟技术的传统产品,这种定时器的功能简单,尽管曾经被广泛应用过,但已列入淘汰之列。另一种是基于数字技术的新一代产品,这种产品功能强,是前者的代换之物。 本设计开发了一种基于单片机的多用途定时器。它造价低,功能全,整体功能价格比较高,配以小键盘和LED显示器,可适应各种场合的定时预警之用。 1.3整体设计方案 基于单片机系统的定时器电路包含了如下的功能模块: ●基本的单片机系统 ●单片机的定时中断 ●单片机的外围电路 ●外部按键输入装置 ●数码管LED显示装置 设计要求输出如图1.1所示的时间定时输出,并显示每个时间的剩余时间。其中三个时间有各自的调节范围:T1, 1S~99S; T2,1S~99S; T3, 1min~99min. 1.31 方案一:利用单片机的定时器完成定时要求。

倒计时定时器设计

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

定时器计数器

定时器/计数器 MCS-51单片机内部有两个16位可编程的定时器/计数器,即定时器T0(由TH0和TL0组成)和定时器T1(由TH1和TL1组成),它们既可用作定时器定时,又可用作计数器记录外部脉冲个数,其工作方式、定时时间、启动、停止等均用指令设定。 定时器/计数器的结构 1.定时器/计数器的工作原理 定时器/计数器T0和T1的工作方式通过八位寄存器TMOD设定,T0和T1 的启动、停止由八位寄存器TCON控制。工作前需先装入初值,利用传送指令将初值装入加1计数器TH0和TL0或TH1和TL1,高位数装入TH0或TH1,低位数装入TL0或TL1。当发出启动命令后,加1计数器开始加1计数,加到满值(各位全1)后,再加1就会产生溢出,系统将初值寄存器清0。如果需要继续计数或定时,则需要重新赋计数初值。 2.定时器的方式寄存器TMOD 特殊功能寄存器TMOD为定时器的方式控制寄存器。TMOD是用来设定定时器的工作方式,其格式如下: 各位功能如下: (1)GATE控制定时器的两种启动方式 当GATE=0时,只要TR0或TR1置1,定时器启动。 当GATE=1时,除TR0或TR1置1外,还必须等待外部脉冲输入端(P3.3)或(P3.2)高电平到,定时器才能启动。若外部输入低电平则定时器关闭,这样可实现由外部控制定时器的启动、停止,故该位被称为门控位。定时器1类同。 (2)定时/计数方式选择位 当该位为0时,T0或T1为定时方式;当该位为1时,T0或T1为计数方式。(3)方式选择位M1、M0 M1、M0两位可组合成4种状态,控制4种工作方式。每种方式的功能如表5-1。 表5-1 M1、M0控制的工作方式 M1 M0 工作方式说明 0 0 0 1 1 0 1 1 0 1 2 3 13位计数器 16位计数器 可再装入8位计数器

定时器计数器(TC)简介以及例子说明

定时器/计数器(T/C)简介 一、定时器/计数器有关的特殊功能寄存器 1. 计数数寄存器TH和TL 计数器寄存器是16位的,计数寄存器由TH高8位和TL低8 位构成。在特殊功能寄存器(SFR)中,对应T/C0为TH0和TL0,对应T/C1为TH1和TL1。定时器/计数器的初始值通过TH1/TH0和TL1/TL0设置。 2. 定时器/计数器控制寄存器TCON TR0,TR1:T/C0,1启动控制位。 1——启动计数0——停止计数 TCON复位后清“0”,T/C需受到软件控制才能启动计数,当计数寄存器计满时,产生向高位的进位TF,即溢出中断请求标志。 3. T/C的方式控制寄存器TMOD T/C1 T/C0 C/T :计数器或定时器选择位。 1——为计数器0——为定时器 GATE:门控信号 1——T/C的启动受到双重控制,即要求TR0/TR1和INT0/INT1

同时为高。 M1和M0:工作方式选择位。(四种工作方式) 4.定时器/计数器2(T/C2)控制寄存器 TF2:T/C2益出标志——必须由软件清除 EXF2:T/C2外部标志。当EXEN2=1,且T2EX引脚上出现负跳变而引起捕获或重装载时置位,EXF2要靠软件来清除。 RCLK:接收时钟标志1——用定时器2 溢出脉冲作为串行口的接收时钟0——用定时器1的溢出脉冲做接收时钟。 TCLK:发送时钟标志。 1——用定时器2 溢出脉冲作为串行口的发送时钟 0——用定时器1的溢出脉冲作发送时钟 EXEN2:T/C2外部允许标志。1——若定时器2未用作串行口

的波特率发生器,T2EX端的负跳变引起T/C2的捕获或重装载。 0——T2EX端的外部信号不起作用。 TR2:T/C2运行控制位 1——T/C2启动0——T/C2停止 C/T2:计数器或定时器选择位 1——计数器0——定时器 CP/RL:捕获/重载标志。 1——若EXEN2=1,且T2EX端的信号负跳变时,发生捕获操作。 0——若定时器2溢出,或在EXEN2=1条件下T2EX端信号负跳变,都会造成自动重装载操作。 二、定时器/计数器的工作方式 1.方式0 当TMOD中M1M0=00,T/C工作在方式0。 方式0为13位的T/C,由TH提供高8位,TL提供低5位的计数值,满计数值213,但启动前可以预置计数初值。 当C/T=0时,T/C为定时器,振荡源12分频的信号作为计数脉冲;当C/T=1时,T/C为计数器,对外部脉冲输入端T0或T1输入的脉冲计数。计数脉冲能否加到计数器上,受到启动信号控制。当GATE=0时,只要TR=1,则T/C启动。当GATE=1时,启动信号 =TR×INT,此时T/C启动受到双重控制。 T/C启动后立即加1计数,当13位计数满时,TH向高位进位,此进位将中断溢出标志TF置1,产生中断请求,表示定时时间到或

WinCC 中定时器使用方法介绍

1、定时器功能介绍 2、脚本中定时器介绍 3、使用脚本实现更多定时器功能 3.1 整点归档 3.2 WinCC 项目激活时避免脚本初次执行及延迟执行脚本1 定时器功能介绍 WinCC 中定时器的使用可以使 WinCC按照指定的周期或者时间点去执行任务,比如周期执行变量归档、在指定的时间点执行全局脚本或条件满足时打印报表。WinCC 已经提供了一些简单的定时器,可以满足大部分定时功能。但是在有些情况下,WinCC 提供的定时器不能满足我们需求,这时我们就可以通过 WinCC 提供的脚本接口通过编程的方式实现定时的功能,因为脚本本身既可以直接调用 WinCC其他功能,比如报表打印,也可以通过中间变量来控制其他功能的执行,比如通过置位/复位归档控制变量来触发变量记录的执行。WinCC 提供了 C 脚本和 VBS 脚本,本文主要以全局 C 脚本编程为例介绍定时功能的实现。 2 脚本中定时器介绍既然在全局脚本中可以编程控制其他功能的执行,那么首先看看全局脚本的触发: 图1 脚本触发器分类如图1所示:脚本触发器分为使用定

时器和使用变量,定时器又分为周期执行和非周期执行一次,比如每分钟执行一次脚本属于周期执行,指定2012年10月1日执行一次属于非周期执行。使用变量触发脚本,即在变量发生变化时,脚本就执行一次,而变量的采集可以根据指定周期循环采集,或者根据变化采集,根据变化实际是1秒钟采集变量一次。 3使用脚本实现更多定时器功能 利用脚本自身的定时器,可以通过在脚本中编程的方式实现更多其它定时功能。 3.1整点归档 WinCC提供了变量归档,变量归档分为周期归档和非周期归档,不管是周期归档或非周期的归档,都又可以通过一些变量或脚本返回值来控制归档,比如:整点归档。下面的设置结合WinCC脚本,实现了在整点开始归档,归档五分种后停止归档,即每个小时仅归档前五分钟的数据。 软件环境:Windows 7 Professional Service Pack1 , WinCC V7.0 SP3 归档名称:ProcessValueArchive 归档变量:NewTag 归档周期:1 分钟 归档控制变量 startarchive C脚本触发周期:10秒 脚本代码: #include"apdefap.h" int gscAction( void ) { #pragma option(mbcs) #pragma code ("kernel32.dll");

单片机计数器与定时器的区别

单片机计数器与定时器的区别 在的学习过程中,我们经常会发现中断、串口是学习的难点,对于初学者来说,这几部分的内容很难理解。但是我个人觉得这几部分内容是的重点,如果在一个学期的课堂学习或者自学中没有理解这几部分内容,那就等于还没有掌握51单片机,那更谈不上单片机的开发了,我们都知道在成品的单片机项目中,有很多是以这几部分为理论基础的,万年历是以定时器为主的,报警器是以中断为主的,联机通讯是以串口为主的。 在这几部分内容中,计数器/定时器对于初学者说很容易搞混淆,下面我将对这方面的内容结合自己的学习经验谈几点看法。 计数器和定时器相同的,他们都是对单片机中产生的脉冲进行计数,只不过计数器是单片机外部触发的脉冲,定时器是单片机内部在晶振的触发下产生的脉冲。当他们的脉冲间隔相同的时候,计数器和定时器就是一个概念。 在定时器和计数器中都有一个溢出的概念,那什么是溢出了。我们可以从一个生活小常识得到答案,当一个碗放在水龙头下接水的时候,过了一会儿,碗的水满了,就发生溢出。同样的道理,假设水龙头的水是一滴滴的往碗里滴,那

么总有一滴水是导致碗中的水溢出的。在碗中溢出的水就浪费了,但是在单片机的中溢出将导致一次中断。 在定时器计数器中,我们有个概念叫容量,就是最大计数量。 把水滴比喻成脉冲,那么导致碗中水溢出的最后一滴水的就是定时计数器的溢出的最后一个脉冲。 在各种单片机书本中,在介绍定时计数器时都讲到一个计数初值,那什么是计数初值呢?在这里我们还是假设水滴碗。假设第一百滴水能够使碗中的水溢出,我们就知道这个碗的容量是100。 在这里计数初值有3个,假设: 根据所得的初始值,再将其转换为,就可以进行计数或者定时了。后面讲解定时器初值的。 单片机, 计数器, 定时器

定时器计数器答案

定时器/计数器 6·1 80C51单片机内部有几个定时器/计数器?它们就是由哪些专用寄存器组成? 答:80C51单片机内部设有两个16位的可编程定时器/计数器,简称为定时器0(T0)与定时器l(Tl)。在定时器/计数器中的两个16位的计数器就是由两个8位专用寄存器TH0、TL0, THl、TLl组成。 6·2 80C51单片机的定时器/计数器有哪几种工作方式?各有什么特点? 答:80C51单片机的定时器/计数器有4种工作方式。下面介绍4种工作方式的特点。 方式0就是一个13位的定时器/计数器。当TL0的低5位溢出时向TH0进位,而TH0溢 出时向中断标志TF0进位(称硬件置位TF0),并申请中断。定时器0计数溢出与否,可通过查询TF0就是否置位或产生定时器0中断。 在方式1中,定时器/计数器的结构与操作几乎与方式0完全相同,惟一的差别就是:定时器就是以全16位二进制数参与操作。 方式2就是能重置初值的8位定时器/计数器。其具有自动恢复初值(初值自动再装人)功; 能,非常适合用做较精确的定时脉冲信号发生器。 方式3 只适用于定时器T0。定时器T0在方式3T被拆成两个独立的8位计数器TL0: 与TH0。其中TL0用原T0的控制位、引脚与中断源,即:C/T、GATE、TR0、TF0与T0 (P3、4)引脚、INTO(P3、2)引脚。除了仅用8位寄存器TL0外,其功能与操作与方式0、方式1 完全相同,可定时亦可计数。此时TH0只可用做简单的内部定时功能。它占用原定时器Tl 的控制位TRl与TFl,同时占用Tl的中断源,其启动与关闭仅受TRl置1与清0控制。

6·3 定时器/计数器用做定时方式时,其定时时间与哪些因素有关?作计数时,对外界计数频率有何限制? 答: 定时器/计数器用做定时方式时,其定时时间与时钟周期、计数器的长度(如8位、13位、16位等)、定时初值等因素有关。作计数时,外部事件的最高计数频率为振荡频率(即时钟周期)的1/24。 6·4 当定时器T0用做方式3时,由于TR1位已被T0占用,如何控制定时器T1的开启与关闭? 答:定时器T0用做方式3时,由于TRl位己被T0占用,此时通过控制位C/T切换其定时器 或计数器工作方式。当设置好工作方式时,定时器1自动开始运行;若要停止操作,只需送入一个设置定时器1为方式3的方式字。 6.5 己知80C51单片机系统时钟频率为6 MHz,请利用定时器T0与Pl。2输出矩形脉冲, 其波形如下: 答:设置T0为方式2定时,定时50us,初值X 为: X=28-(6×106×50×10-8 )÷12= 231D= E7H TH0= TL0=E7H ,TMOD= 2H 源程序如下: MOV TMOD,#02H ;设置T0为方式2定时 MOV TH0,#E7H ;赋初值 MOV TL0,#E7H

定时器的设计论文

课程设计 题目定时器的设计 学生姓名黄冬冬学号1110064069所在院(系)物电学院 专业班级电信1103班 指导教师刘亚锋 完成地点陕西理工学院实验楼506 2013年10月15日

目录 摘要 (1) 引言 (1) 1、任务要求 (2) 2、所需实验设备、器材和软件 (2) 2.1所需实验设备 (2) 2.2所需实验器材 (3) 2.3所需实验软件 (4) 3、方案选择 (4) 3.1方案一 (4) 3.2方案二 (4) 3.3方案三 (5) 3.4方案对比与选择 (6) 4、流程图 (6) 5、仿真与测试 (7) 5.1仿真图形 (7) 5.2测试结果 (7) 5.3出现的问题及解决方法 (8) 5.4总结 (8)

6不足之处 (8) 参考文献 (9) 定时器的设计 摘要:本设计利用555时基集成电路构成的定时开关电路,采用纯数字电路的知识,用纯逻辑电路来实现定时的实现,用NE555作为控制芯片,加入了比较器C2的同相输入端接到分压电阻网络的1/3Vcc处,反相输入端2为触发电压输入端,用来启动电路。两个比较器的输出端控制RS触发器,实现了定时器的设计。 【关键字】555继电器稳态 引言 定时器,是指装有时段或时刻控制机构的开关装置;定时器有一个频率稳定的振荡源,通过齿轮传动或集成电路分频计数,当将时间累加到预置数值时,或指示到预置的时刻处,定时器即发送信号控制执行机构。定时器有机械式、电动式和电子式三类,其中机械式定时器以发条为原动力,用擒纵调速器控制走时精度,通过齿轮传动和凸轮,按时间控制机构预置的时段操纵执行机构动作;电动式定时器用交流同步电动机或石英步进电机驱动,通过齿轮传动和凸轮簧片触点机构,按预置的时段或时刻控制执行机构;电子式定时

定时器与计数器

四川工程职业技术学院 单片机应用技术课程电子教案 Copyright ? https://www.360docs.net/doc/7d16810248.html, 第 讲 15 定时器/计数器基础

本讲主要内容: 15-1.实现定时的方法 15-2.定时器/计数器的结构和工作原理15-3.定时器/计数器的控制 15-4.定时器/计数器的工作方式 15-5.定时器/计数器应用

15-1.实现定时的方法 软件定时 ? 软件延时不占用硬件资源,但占用了CPU时间,降低了CPU的利用 率。例如延时程序。 采用时基电路定时 ?例如采用555电路,外接必要的元器件(电阻和电容),即可构成硬 件定时电路。但在硬件连接好以后,定时值与定时范围不能由软件 进行控制和修改,即不可编程,且定时时间容易漂移。 可编程定时器定时 ?最方便的办法是利用单片机内部的定时器/计数器。结合了软件定时 精确和硬件定时电路独立的特点。 定时器/计数器 如何使用呢?

定时器/计数器的结构 定时器/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD 是定时器/计数器的工作方式寄存器,确定工作方式和功能;TCON 是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。 G A T E C /T M 1 M 0 G A T E C /T M 1 M 0 TH1TL1TH0TL0 T1方式T0方式 T1引脚 T0引脚 机器周期脉冲 内部总线 TMOD TCON 外部中断相关位 T F 1 T R 1 T F 0 T R 0 T1计数器 T0计数器 控制单元

定时器/计数器的工作原理 ?计数器输入的计数脉冲源 系统的时钟振荡器输出脉冲经12分频后产生; T0或T1引脚输入的外部脉冲源。 ?计数过程 每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断 请求(定时器/计数器中断允许时)。如果定时器/计数器工作于定时模式,则表 示定时时间已到;如果工作于计数模式,则表示计数值已满。

基于单片机的定时器设计.

电气信息学院 课程设计任务书 课题名称基于单片机的定时器设计 姓名Front专业班级学号 校内指导老师企业指导老师 课程设计时间2017年3月6日-2017年3月17日(3、4周) 教研室意见意见:审核人: 一、设计任务及要求 1、设计任务: 以单片机为核心设计一个音乐提示定时器,具备倒数计时、时间修改、音乐演奏等功能。可作为微电脑倒数计数器,做一小段时间计时,放在家中使用,例如煮泡面、煮开水或小睡片刻等;用于全自动洗衣机洗涤完毕音乐提示定时器。设计4个按键设置现在想要倒数的时间:K1--可调整倒数时间为1-60分钟;K2—设置倒数计时时间为5分钟,显示为“05”;K3—设置倒数计时时间为20分钟,显示为“20”;K4—设置倒数计时时间为60分钟,显示为“60”;一旦按键后则开始倒计时,当计时为0则演奏一曲音乐;内定倒数计时时间为5分钟,显示为05。 2、设计要求: 1)设计方案要合理、正确; 2)系统硬件设计; 3)系统软件设计及调试; 4)系统联调; 5)写出设计报告。 二、进度安排 第一周: 周一:集中布置课程设计任务和相关事宜,查资料确定系统总体方案。 周二~周三:完成硬件设计和电路连接 周四~周日:完成软件设计 第二周: 周一~周三:程序调试 周四~周五:设计报告撰写。周五进行答辩和设计结果检查。

三、参考文献 1)《微型计算机原理及应用》许立梓编机械工业出版社 2002 2)《微型计算机接口技术及应用》刘乐善编华中理工大学出版社 2000 3)《计算机硬件技术基础试验教程》邹逢兴编高等教育出版社 2000 4)《16位微型计算机原理接口及其应用》周佩玲编中国科学技术大学出版社2000 5)《微型计算机原理与接口技术》吴秀清编中国科学技术出版社 2001 6)《微型计算机接口技术》邓亚平编清华大学出版社 2001 7)《单片机原理及及应用》王迎旭编机械工业出版社 2001 8)《单片机应用程序设计技术》周航慈著北京航空航天大学出版社 2002 9)《单片机实用技术问答》谢宜仁主编人民邮电出版社 2002

PLC程序中定时器和计数器的配合应用

PLC程序中定时器和计数器的配合应用 实际应用中,定时器和计数器,常常有“强强联合”形式的搭配性应用。 一、定时器 1、定时器是位/字复合元件,可以有三个属性: 1)有线圈/触点元件,当满足线圈的驱动(时间)条件时,触点动作; 2)具有时间控制条件,当线圈被驱动时,触点并不是实时做出动作反应,而是当线圈被驱动时间达到预置时间后,触点才做出动作; 3)具有数值/数据处理功能,同时又是“字元件”。 2、可以用两种方法对定时时间进行设置: 1)直接用数字指定。FX编程器用10进制数据指定,如K50,对于100ms 定时器来讲,延时5秒动作。为5秒定时器。对LS编程器,可用10制数或16进制数设定,如50(或h32),对于100ms定时器来讲,延时5秒动作; 2)以数据寄存器D设定定时时间,即定时器的动作时间为D内的寄存数值。 3、由定时器构成的时间控制程序电路: LS编程器中的定时器有多种类型,但FX编程器中的定时器只有“得电延时输出”定时器一种,可以通过编写相应程序电路来实现“另一类型”的定时功能。图1程序电路中,利用M0和T1配合,实现了单稳态输出——断开延时定时器功能,X1接通后,Y0输出;X1断开后,Y0延时10秒才断开;T2、T3、Y2电路则构成了双延时定时器,X4接通时,Y2延时2秒输出;X4断开时,Y2延时3秒断开;Y3延时输出的定时时间,是由T4定时器决定的,T4的定时时间是同D1数据寄存器间接指定的。当X2接通时,T4定时值被设定为10秒;当X3接通时,T4定时值则被设定为20秒。XO提供定时值的清零/复位操作。 单个定时器的定时值由最大设定值所限定(0.1∽3276.7s),换言之,其延时动作时间不能超过1小时。如欲延长定时时间,可以如常规继电控制线路一样,将多只定时器“级联”,总定时值系多只定时器的定时值相加,以扩展定时时间。更好的办法,是常将定时器与计数器配合应用,其定时时间,即变为定时器的定时器与计数器的计数值相乘,更大大拓展了定时范围,甚至可以以月或年为单位

定时器计数器

图1-2 将T1计数的结果送P0口显示 (3)控制LED 灯左循环亮 用A T89C51单片机控制一组LED 灯左循环亮,采用50ms 延时子程序调用达到1S 延时,使用P0口输出控制发光二极管灯。电路图如图1-2所示,晶振采用12MHZ 。要求如下: ①用发光二极管灯左循环亮为输出值; ②利用单片机的定时器完成此项目; ③每1S 左循环一次。 图1-3 控制LED 灯左循环亮 三、实验程序 1. 用定时器T0查询方式控制P3口8位LED 闪烁 (1)分析: 用定时器0、方式1, 则TMOD =××××0001B 由于T 机器=12T 时钟=12 1/fosc=1us ,而方式1的最大定时时间为65.536ms ,所以可选择:50ms 。定时器初始值为: TH0=(65536-50000)/256;//定时器T0的高8位赋初值 TL0=(65536-50000)%256;//定时器T0的低8位赋初值 (2)程序设计 先建立文件夹“SY 1-1”,然后建立“SY2-1”工程项目,最后建立源程序文件“SY 1-1.c”,输入如下源程序: #include // 包含51单片机寄存器定义的头文件 void main(void) { TMOD=0x01; //使用定时器T0的方式1 TH0=(65536-50000)/256; /*定时器T0的高8位赋初值*/ TL0= (65536-50000)%256; /*定时器T0的低8位赋初值*/ TR0=1; //启动定时器T0 组长 学号 专业 班级 实验项目 实验1 定时器/计数器 课程名称 单片机原理 课程代码 试验时间 实验地点 成绩 教师签字: 一、实验目的 (1)了解80C51定时器/计数器的结构; (2)掌握定时器/计数器方式寄存器TMOD 设置; (3)掌握定时器/计数器控制寄存器TCON 设置; (4)掌握定时器/计数器的初始化步骤; (5)掌握定时或计数初值的计算; (6)掌握80C51定时器/计数器编程方法。 二、实验内容 (1)用定时器T0查询方式控制P3口8位LED 闪烁 使用T0工作于方式1,采用查询方式控制P3口8位LED 的闪烁周期为100ms ,即亮50ms ,熄灭50ms ,电路图如图1-1所示,设单片机晶振频率为12MHz 。 图1-1 用定时器T0查询方式控制P3口8位LED 闪烁 (2)将T1计数的结果送P0口显示 用AT89C51单片机控制LED 灯左循环亮,采用50ms 延时子程序调用达到1S 延时,使用P0口输出控制发光二极管灯。电路图如图1-2所示,设单片机晶振频率为12MHz 。

定时器产品使用说明书

定时器产品使用说明书 定时设置: 1、先检查时钟是否与当前时间一致,如需重新校准,在按住“时钟”键的同时,分别按住“星期”、“小时”、“分钟”键,将时钟调到当前准确时间。 2、按一下“设定”键,显示屏左下方出现“1开”字样(表示第一次开启的时间)。然后按“星期”调整本次设定的星期组合模式,再按“小时”、“分钟”键,输入所需开启的时间。 3、再按一下“设定”键,显示屏左下方出现“1关”字样(表示第一次关闭时间),再按“星期”、“小时”、“分钟”键,输入所需关闭的日期和时间。 4、继续按动“设定”键,显示屏左下方将依次显示“2开、2关、3开、3关……16开、16关”,参考步骤2、3设置以后各次开关时间。设置完成后,按一下“时钟”键返回。 5、如果每天不需设置16组开关,则必须按“清除”键,将多余各组消除,使其显示屏上显示“—:—”图样(不是00:00)。 6、按“模式”键,可以变换工作模式。总共有四种工作模式:A、液晶显示开(代表进入常开模式);B、液晶显示关(代表进入常关模式);C、由开进入自动(表示目前状态为开,等到下一组时间到后开始自动运行);D、由关进入自动(表示目前状态为关,等到下一组定时时间到后开始自动运行)。 当出现以下情况时: 1、定时器没有根据设定的程序开启或关闭,请检查设置程序是否正确或重新调整。 2、定时器长时间不用,显示模糊时,请将定时器接通电源充足,10分钟后无显示,按“复位”键,2-3秒。 3、如以上步骤均不能排除问题,请与公司或经销商联系维修。 注意事项: 1、对于那些因定时开关出错而可能发生的生命相关事故或者对社会产生重大影响的设备(如医疗设备等),请不要使用定时开关。 2、对于那些因定时开关出错而发生重大财产损失的设备(大型加热器或冷库),在使用本定时开关时,请务必是特性和性能的数值有足够的余量,并采取二重电路等安全对策。 3、请勿自行修理、分解或改造。 4、接通电源后请勿接触端子部分。本开关工作在无潮湿、腐蚀及高金属含量气体环境中。请勿沾染油或水。

单片机定时器设计报告

第一章绪论 1.1系统背景 ◆ 1.1.1单片机的介绍 单片微型计算机简称单片机,是典型的嵌入式微控制器,常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。 单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性! ◆ 1.1.2单片机的应用 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说

ATMEGA16定时器的使用

ATMEGA16定时器的使用 [日期:2012-01-07 ] [来源:本站编辑作者:佚名] [字体:大中小] (投递新闻) /* 本程序简单的示范了如何使用ATMEGA16的定时器 AVR定时器的要点介绍 T0工作于CTC模式,输出1KHz/2KHz 50%占空比的方波 T1工作于快速PWM模式兼输入捕捉 T2工作于相位修正PWM模式,输出490Hz的8bit PWM波 出于简化程序考虑,各种数据没有对外输出,学习时建议使用JTAG ICE硬件仿真器对于定时器,AVRstudio的软件仿真是不准确的。 */ #include #include #include //时钟定为8MHz,F_CPU=8000000 //管脚定义 #define ICPKEY 6 //ICP1 PD6 按键模拟ICP输入 #define PWM0 3 //OC0 PB3 #define PWM1A 5 //OC1A PD5 #define PWM1B 4 //OC1B PD4 #define PWM2 7 //OC2 PD7 //宏定义 #define PWM1A_ON() PORTD|= (1<

PLC中三种计数器和定时器

COUNTER计数器 1.CTD减计数器 当CD收到一个上升沿,CV递减一,收到第2个上升沿,CV再递减一,直到CV递减到0后,Q输出TRUE。 PV-----装入的是计数器的,初始数值,CV从这个初始数值开始递减(一个CD收到的上升沿脉冲让CV减一) LOAD-------当LOAD变为TRUE,减计数器复位,PV变成设置的最大值。 2.CTU加计数器 CU----接受上升沿个数,收到一个脉冲,CV增加1,直到CV=PV后,

Q输出TRUE,RESET复位----如果RESET=TRUE,则计数器被复位成0。--------------CU,Q,RESET都为BOOL变量,CV和PV为WORD 变量。 3.CTUD增减计数器 CU, CD, RESET, LOAD, QU , QD 都是 BOOL变量, PV 和 CV 都是 INT变量. 如果 RESET=TRUE, CV 被赋值为0. If LOAD=TRUE,那么 CV 被设置成PV的数值. 如果 CU收到一个上升沿脉冲信号, CV在不超出范围的前提下增加1。. 如果CD 收到一个上升沿脉冲信号, CV 在不小于0的情况下,会减少1。 当CV = PV时,QU输出TRUE. 当 CV= 0时,QD输出TRUE. 三种定时器的区别

TP定时器 Q由FALSE变成TRUE被IN上升沿促发,(脉冲促发),由TRUE 变成FALSE为达到延迟时间PT后促发。只要TP检测IN有一个上升沿,Q马上变成TRUE。计时开始-----当达到PT设置的时间后,不管IN为什么状态,Q由TRUE变成FALSE。 TON定时器 (延时接通) 当IN为TRUE,并且IN保持为TRUE,当ET的时间=PT以后,Q 促发,由FALSE变为TRUE。而且IN为TRUE不变,只要IN变为FALSE,IN变FALSE的下降沿马上促发Q由TRUE变成FALSE。

单片机定时器计数器实验报告

单片机定时器计数器实验报告 篇一:单片机计数器实验报告 计数器实验报告 ㈠实验目的 1. 学习单片机内部定时/计数器的使用和编程方法; 2. 进一步掌握中断处理程序的编程方法。 ㈡实验器材 1. 2. 3. 4. 5. G6W仿真器一台 MCS—51实验板一台 PC机一台电源一台信号发生器一台 ㈢实验内容及要求 8051内部定时计数器,按计数器模式和方式1工作,对 P3.4(T0)引脚进行计数,使用8051的T1作定时器,50ms 中断一次,看T0内每50ms来了多少脉冲,将计数值送显(通过LED发光二极管8421码来表示),1秒后再次测试。 ㈣实验说明 1. 本实验中内部计数器其计数器的作用,外部事件计数器脉冲由P3.4引入 定时器T0。单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能检测到一次跳变,这就要求被采样电平至少维持一个完整的机器周期,以保证电

平在变化之前即被采样,同时这就决定了输入波形的频率不能超过机器周期频率。 2. 计数脉冲由信号发生器输入(从T0端接入)。 3. 计数值通过发光二极管显示,要求:显示两位,十位用L4~L1的8421 码表示,个位用L8~L5的8421码表示 4. 将脉搏检查模块接入电路中,对脉搏进行计数,计算出每分钟脉搏跳动 次数并显示 ㈤实验框图(见下页) 程序源代码 ORG 00000H LJMP MAIN ORG 001BH AJMP MAIN1 MAIN: MOV SP,#60H MOV TMOD,#15H MOV 20H,#14H MOV TL1,#0B0H MOV TH1,#3CHMOV TL0,#00H ;T0的中断入口地址 ;设置T1做定时器,T0做计数器,都于方式1工作 ;装入中断次数 ;装入计数值低8位 ;装入计数值高8位 MOV TH0,#00H SETB TR1 ;启动定时器T1 SETB TR0 ;启动计数器T0 SETB ET1 ;允许T1中断 SETB EA ;允许CPU中断 SJMP $;

单片机定时器设计

摘要 摘要 随着时代的进步,电子行业的发展,定时器的应用也越来越广泛,单片机以其强大的功能,成为许多功能电子产品的首选。本次电子定时器电路根据设计要求采用AT89C51单片机来实现最大99秒倒计时,采用两位数码管显示。文章的核心主要是硬件介绍及连接和软件编程两个大的方面。硬件电路主要包括AT89C51、晶振电路、数码管,发光二级管,按键。软件用汇编语言实现,主要包括主程序、倒计时、重启控制程序等软件模块。采用软硬件配合基本能实现设定定时时间倒计时功能,达到了设计的要求和目的。并在Proteus软件上进行了仿真和调试。 关键词 AT89C51单片机;定时器;倒计时

目录 摘要…………………………………………………………………………………………… 第一章绪论......................................................... 1.1定时器的发展................................................. 1.2 电子定时器的应用............................................... 1.3选题的目的和意义................................................ 1.4 本章小结 第二章单片机的基础知识 (3) 2.1单片机简介 (3) 2.2单片机的特点 (3) 2.3 本章小节 第三章功能实现及硬件介绍 (4) 3.1 设计功能实现 (4) 3.2 C51单片机引脚介绍 (9) 3.3时钟和复位电路 3.4数码管显示 (10) 3.5键盘 (12) 3.6电气原理图……………………………………………………… 3.7本章小结 第四章软件设计 (15) 4.1 程序流程图 (15) 4.2定时1秒设计 (16) 4.3重新启动 (17) 4.4程序 (17) 4.5 本章小结 结论................................................................ 参考文献............................................................ 致谢.........................................................................

定时器T的用法

第九讲定时器T2的用法 定时器 声明,定时器T2只有52以上的芯片才有,51没有的。

捕捉模式 在捕捉模式时,两种操作模式由T2CON中的EXEN2位选择。如果EXEN2=0,Timer2作为一个16位向上定时或计数器,当溢出时将T2CON中的TF2置1。这个标志位可以产生一个中断。如果EXEN2=1,Timer2起同样的作用,但是,外部输入端T2EX上的下降延也可以使TH2和TL2中的值捕捉到RCAP2H和RCAP2L中,另外,T2EX上的下降延可以将EXF2置1,像TF2一样,也可以产生一个中断。捕捉模式详见图5。 自动重载模式

Timer2在指定为16为自动重载模式时可以编程为加计数或减计数,此功能由T2MOD 中的DCEN位决定。DCEN=0,计数器向上计数,默认置为0,DCEN=1时,Timer2的加或减由T2EX的值决定。 图6显示Timer2在DCEN=0时自动向上计数。在这个模式时,T2CON的EXEN2为可以选择两种操作。EXEN2=0,Timer2向上计数到0FFFFH时将TF2为置1,溢出可以把RCAP2H和RCAP2L 中的16为值重新加载到定时寄存器中。捕捉模式时RCAP2H和RCAP2L中的值由软件预先设定。EXEN2=1,既可以由溢出重载也可以由T2EX引脚的下降延触发重载。TF2和EXF2都可以产生中断。设置DCEN为可以时Timer2向上或向下计数,如图6所示,此模式下,T2EX 脚控制计数方向。T2EX如果为1,Timer2向上计数。计数器到0FFFFH时溢出并将TF2置1。溢出可以使RCAP2H和RCAP2L中的16为值重新加载到定时寄存器中。T2EX如果为0,Timer2向下计数,当TH2和TL2中的值和RCAP2H和RCAP2L相等时向下溢出。溢出使TF2置1并 将0FFFFH重新加载到计时寄存器中。

单片机课程设计--定时器

单片机课程设计--定时器

题目名称:定时器时钟数码管显示姓名: 班级: 学号: 日期:2012年6月29日

单片机时钟 1.摘要: 时钟是人类生活中必不可少的的工具,本设计从日常生活中的事物入手,通过对时钟计时器的设计,让我们认识到单片机已经深入到我们生活的每个领域,该设计不仅可以锻炼我们的动手能力,而且可以加深我们对单片机的认识和激发我们队位置科学领域的探索。 利用单片机实现教学数字时钟计时的主要功能,采用独立式按键进行时间调整,其中AT89C52是核心元件同是采用数码管LED动态显示“时”,“分”,“秒”的现代计时装置。与传统机械表相比,它具有走时精确,显示直观等特点。它的计时周期为24小时,显满刻度为“23时59分59秒”。该系统同时具有硬件设计简单,工作稳定性高,价格低廉等优点。 1.1. 关键词 AT89C52 、LED显示 1.2. 功能要求 1)七位数码管显示时、分、秒,以24小时运算 2)可实现时分调整 1.3. 主要硬件元器件的介绍 1.3.1 51单片机芯片 根据初步这几方案的分析,设计这样一个简单的应用系统,可以选择带有EPROM的单片机,应用程序直接存储在片内,不用在外部扩展程序存储器,电路可以简化。该系统的设计我们采用8051芯片。 下图所示为双列直插式封装的8051AH芯片的管脚图,功能如下:

8051AH芯片的管脚图 1.电源管脚 Vcc(40脚):接+5V;Vss(20)脚:接地。 2.时钟信号管脚 X1(19脚), X2(18脚):外部时钟信号的两个管脚。 3.控制线 1)RESET(9脚):用作复位输入端。 2)EA’/VP(31脚):EA’为访问内部或外部程序存储器的选择信号。对片内EPROM编程时,此管脚(作VP)接入21V编程电压。 3)ALE/P’(30脚):当访问外部存储器时,ALE信号的负跳变将P0口上的低8位地址送入锁存器。当对内EPROM编程时,该管脚(P’)用于输入编程脉冲。 4)PSEN’(29脚):外部程序存储器读选通控制信号。 4.输入/输出口线 1)P0口(32-39脚):8路漏极开路型双向并行I/O口。在访问外部存储器时,P0口作为低8位地址/数据总线复用口,通过分时操作,先传送低8位地址,利用ALE信号的下降沿将地址锁存,然后作为8位数据总线使用,用来传送8位数据。在对片内EPROM编程时,P0口接受指令代码;而在内部程序校验时,则输出指令代码,并要求外接上拉电阻。外部不拓展位单片应用,则作双向I/O口用,P0口能以吸收电流的方式驱动8个LSTTL 负载。 2)P1口(1-8脚):具有内部上拉电阻的8位准双向I/O口。在对片内EPROM编程及校验时,它接收低8位地址。P1口能驱动4个LETTL负载。

相关文档
最新文档