电子定时器的设计.docx

上传人:b****6 文档编号:8442357 上传时间:2023-01-31 格式:DOCX 页数:44 大小:514.58KB
下载 相关 举报
电子定时器的设计.docx_第1页
第1页 / 共44页
电子定时器的设计.docx_第2页
第2页 / 共44页
电子定时器的设计.docx_第3页
第3页 / 共44页
电子定时器的设计.docx_第4页
第4页 / 共44页
电子定时器的设计.docx_第5页
第5页 / 共44页
点击查看更多>>
下载资源
资源描述

电子定时器的设计.docx

《电子定时器的设计.docx》由会员分享,可在线阅读,更多相关《电子定时器的设计.docx(44页珍藏版)》请在冰豆网上搜索。

电子定时器的设计.docx

电子定时器的设计

 

电子定时器的设计

 

学生姓名:

xxxx

学部:

xxxx

班级:

xxxxxx3

专业:

电xxxxx程

指导教师:

xxxx

 

北京城市学院

2008年12月日

 

电子定时器的设计

Electrontimerdesign

 

学生:

xxxx班级:

xxxxx3学号:

0xxx

学部:

xxx专业:

xx

指导老师:

xxx指导老师职称:

xxxx

工作单位:

xxxx

 

毕业设计(论文)完成时间自2008年12月

至2009年05月

【摘要】

随着时代的进步,电子行业的发展,定时器的应用也越来越广泛。

但传统的定时器都是使用发条驱动式、电机传动式或电钟式等机械定时器。

电子定时器相对产痛定时器来说,体积小、重量轻、造价低、精度高、寿命长、而且安全可靠、调整方便、适于频繁使用。

本设计采用AT89C2051单片机为核心,阐述了系统工作原理,给出了软件流程。

该电子定时器满足对电器的电源进行控制,同时要方便用户对电子定时器的操作。

最大时间能达到30h,切最大精度可以到分钟

 

关键词:

定时器;单片机;AT89C2051;动态扫描;继电器

 

【Abstract】

Progress,developmentofelectronindustry,thetimerapplicationarealsomoreandmorebroadwiththetimes.But,thetraditiontimerallistousespringtodrivemachinerytimerssuchasstyle,electricmotordrivestyleorelectricclockstyle.Cometheelectrontimertosayvolumeissmall,weightislight,costofconstructionislow,accuracyishigh,life-spanislong,andsafetyisreliable,adjusttobesuitableforbeingfrequentlyputintouseconvenientlyrelativelypainfultimerofproduct.HavedesignedthatthemonolithicmachineiscoreoriginallyadoptAT89C2051,havesetforthsystemoperatingprinciple,havegivenasoftwareouttechnologicalprocess.Thepowersourcegoalongbeingtheelectrontimer'sturntobesatisfiedwithelectricalequipmentiscontrolled,iswantstheconvenienceofcustomersoperationtoelectrontimeratthesametime.Maximaltimecanreach30hs,byallmeansmaximalaccuracycanarriveataminute

 

Keywords:

Timer;Monolithicmachine;AT89C2051;Developmentisscanned;Relay

 

1引言7

1.1课题的来源和意义7

1.2电子定时器的应用8

1.3电子定时器的发展前景8

251单片机内部结构及计数原理8

2.151单片机内部机构8

2.2计数原理11

3电子定时器的设计19

3.1总体的设计要求19

3.2系统硬件电路设计19

3.2.1芯片的选择19

3.2.2交流控制接口电路19

3.2.3显示电路19

3.2.4报警电路19

3.3系统程序的设计20

3.3.1主程序流程图20

4重要元件及重要电路21

4.1AT89C2051的内部结构及功能和引脚说明21

4.1.1AT89C2051主要性能22

4.1.2AT89C2051的内部结构22

4.1.3AT89C2051的引脚说明24

4.2继电器26

4.2.1、电磁继电器的工作原理和特性26

4.2.2、继电器主要产品技术参数26

4.2.3、继电器的电符号和触点形式27

4.3数码管28

4.3.1、数码管的分类28

4.3.2、数码管的驱动方式28

5软件设计29

5.1伪定义29

5.2中断入口30

5.3主程序31

5.4倒计时程序34

5.5BCD子程序(加1或减1)35

5.6加1程序36

5.7调时快进程序37

5.8功能菜单程序37

5.9到点工作程序40

5.10响铃程序42

5.11显示程序43

5.12无显示(灭灯)程序45

5.13延时程序45

5.14ERR(出错处理)程序47

结论48

参考文献49

致谢50

附录51

 

1引言

我们在日常生活中,经常碰到一些需要定时的事情,例如:

印相或放大照片,需要定在零点几秒的时间,洗衣机洗涤衣物需要定在几分钟到几十分钟的时间,电风扇需要定在数十分钟的时间。

完成这种定时的定时器有多种多样,在家用电器中采用机械定时器就是根据一般上弦钟表原理设计的,这种定时器虽然结构简单,成本低,维修也比较方便,但是它的触头频繁接触和断开,大大的缩减了它的使用寿命,也不利于进一步全自动化。

在电子技术突飞猛进的今天,电子定时器一定会逐步取而代之,这是不言而喻的。

本文是基于51系列单片机设计的一种用于控制家用电器的设计方案。

1.1课题的来源和意义

本课题是通过导师筛选提出的,电子设计课题不一定很大,只要通过亲手做一遍全过程,完成一个产品制作,收获是很大的。

本课题的意义在于通过设计和制作本课题把在学校学习到的知识融会贯通并应用到实际当中。

做到学有所成,学有所用。

并且希望通过本设计为节能减排做出贡献。

1.2电子定时器的应用

电子定时器在家用电器中经常用于延时自动关机、定时。

延时自动关机可用于:

收音机、电视机、录音机、催眠器、门灯、路灯、汽车头灯、转弯灯以及其他电器的延时断电及延时自停电源等。

定时可用于:

照相定时曝光、定时闪光、定时放大、定时调速、定时烘箱、冰箱门开定时报警、水位定时报警、延时催眠器、延时电铃、延时电子锁、触摸定时开关等。

例如:

空调中的定时器,在工作一段时间之后便能自动切断电源停止工作。

夏季夜间使用,入睡前先顶好时间,等睡熟后到了预定时间,空调自动关机。

方便节能。

定时器除了应用于家用电器外,还广泛地用于工业农业生产和服务设施,甚至军事等。

1.3电子定时器的发展前景

传统的定时器绝大多数都是发条驱动式、电机传动式或电钟式等机械定时器,部分电子器械中也有试用时间继电器的。

相对于传统的定时器,电子定时器的体积小、重量轻、造价低、精度高、寿命长、而且安全可靠、调整方便、适于频繁使用。

所以电子定时器的发展必定大有前途。

同时随着现代电子技术的发展,电子定时器也在不断的进步,朝向着更多用途、更高精度、更小体积发展着。

例如:

一个可编程电子定时器,它可以设置20组开、关电源设置,可以当时钟使用,还也可以按星期组合让它在一周内的任意一天或几天按设置程序工作。

而且它只有长12.5cm×宽5.5cm×厚5cm大小。

且它的功耗特别小只有3W。

可以说是小巧玲珑,节能省电。

251单片机内部结构及计数原理

2.151单片机内部机构

51单片机内部有一个8位的CPU,同时CPU内部包含了运算器,控制器及若干寄存器。

从上图中我们可以看到,在虚线框内的就是CPU的内部结构了,8位的MCS-51单片机的CPU内部有数术逻辑单元ALU(ArithmeticLogicUnit)、累加器A(8位)、寄存器B(8位)、程序状态字PSW(8位)、程序计数器PC(有时也称为指令指针,即IP,16位)、地址寄存器AR(16位)、数据寄存器DR(8位)、指令寄存器IR(8位)、指令译码器ID、控制器等部件组成。

1、运算器(ALU)的主要功能

A)算术和逻辑运算,可对半字节(一个字节是8位,半个字节就是4位)和单字节数据进行操作。

B)加、减、乘、除、加1、减1、比较等算术运算。

C)与、或、异或、求补、循环等逻辑运算。

D)位处理功能(即布尔处理器)。

由于ALU内部没有寄存器,参加运算的操作数,必须放在累加器A中。

累加器A也用于存放运算结果。

例如:

执行指令ADDA,B  

执行这条指令时,累加器A中的内容通过输入口In_1输入ALU,寄存器B通过内部数据总线经输入口In_2输入ALU,A+B的结果通过ALU的输出口Out、内部数据总线,送回到累加器A。

2、程序计数器PC

PC的作用是用来存放将要执行的指令地址,共16位,可对64KROM直接寻址,PC低8位经P0口输出,高8位经P2口输出。

也就是说,程序执行到什么地方,程序计数器PC就指到哪里,它始终是跟蹿着程序的执行。

我们知道,用户程序是存放在内部的ROM中的,我们要执行程序就要从ROM中一个个字节的读出来,然后到CPU中去执行,那么ROM具体执行到哪一条呢?

这就需要我们的程序计数器PC来指示。

程序计数器PC具有自动加1的功能,即从存储器中读出一个字节的指令码后,PC自动加1(指向下一个存储单元)。

3、指令寄存器IR

指令寄存器的作用就是用来存放即将执行的指令代码。

在这里我们先简单的了解下CPU执行指令的过程,首先由程序存储器(ROM)中读取指令代码送入到指令寄存器,经译码器译码后再由定时与控制电路发出相应的控制信号,从而完成指令的功能。

关于指令在单片机内部的执行过程,我们在后面将会以另一节课来进行详细的讲解。

4、指令译码器ID

用于对送入指令寄存器中的指令进行译码,所谓译码就是把指令转变成执行此指令所需要的电信号。

当指令送入译码器后,由译码器对该指令进行译码,根据译码器输出的信号,CPU控制电路定时地产生执行该指令所需的各种控制信号,使单片机正确的执行程序所需要的各种操作。

5、地址寄存器AR(16位)

AR的作用是用来存放将要寻址的外部存储器单元的地址信息,指令码所在存储单元的地址编码,由程序计数器PC产生,而指令中操作数所在的存储单元地址码,由指令的操作数给定。

从上图中我们可以看到,地址寄存器AR通过地址总线AB与外部存储器相连。

6、数据寄存器DR

用于存放写入外部存储器或I/O端口的数据信息。

可见,数据寄存器对输出数据具有锁存功能。

数据寄存器与外部数据总线DB直接相连。

7、程序状态字PSW

用于记录运算过程中的状态,如是否溢出、进位等。

例如,累加器A的内容83H,执行:

ADDA,#8AH  ;累加器A与立即数8AH相加,并把结果存放在A中。

指令后,将产生和的结果为[1]0DH,而累加器A只有8位,只能存放低8位,即0DH,元法存放结果中的最高位B8。

为些,在CPU内设置一个进位标志位C,当执行加法运算出现进位时,进位标志位C为1。

8、时序部件

由时钟电路和脉冲分配器组成,用于产生微操作控制部件所需的定时脉冲信号

2.2计数原理

80C51单片机内部设有两个16位的可编程定时器/计数器。

可编程的意思是指其功能(如工作方式、定时时间、量程、启动方式等)均可由指令来确定和改变。

在定时器/计数器中除了有两个16位的计数器之外,还有两个特殊功能寄存器(控制寄存器和方式寄存器)。

定时器/计数器的结构:

从上面定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:

T0由TH0和TL0构成;T1由TH1和TL1构成。

其访问地址依次为8AH-8DH。

每个寄存器均可单独访问。

这些寄存器是用于存放定时或计数初值的。

此外,其内部还有一个8位的定时器方式寄存器TMOD和一个8位的定时控制寄存器TCON。

这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。

TMOD主要是用于选定定时器的工作方式;TCON主要是用于控制定时器的启动停止,此外TCON还可以保存T0、T1的溢出和中断标志。

当定时器工作在计数方式时,外部事件通过引脚T0(P3.4)和T1(P3.5)输入。

定时计数器的原理:

16位的定时器/计数器实质上就是一个加1计数器,其控制电路受软件控制、切换。

当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。

显然,定时器的定时时间与系统的振荡频率有关。

因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。

如果晶振为12MHz,则计数周期为:

T=1/(12×106)Hz×1/12=1μs

这是最短的定时周期。

若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。

   当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。

计数器在每个机器周期的S5P2期间采样引脚输入电平。

若一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1。

此后的机器周期S3P1期间,新的计数值装入计数器。

所以检测一个由1至0的跳变需要两个机器周期,故外部事年的最高计数频率为振荡频率的1/24。

例如,如果选用12MHz晶振,则最高计数频率为0.5MHz。

虽然对外部输入信号的占空比无特殊要求,但为了确保某给定电平在变化前至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。

   当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU当前操作。

CPU也可以重新设置定时器工作方式,以改变定时器的操作。

由此可见,定时器是单片机中效率高而且工作灵活的部件。

   综上所述,我们已知定时器/计数器是一种可编程部件,所以在定时器/计数器开始工作之前,CPU必须将一些命令(称为控制字)写入定时/计数器。

将控制字写入定时/计数器的过程叫定时器/计数器初始化。

在初始化过程中,要将工作方式控制字写入方式寄存器,工作状态字(或相关位)写入控制寄存器,赋定时/计数初值。

下面我们就提出的控制字的格式及各位的主要功能与大家详细的讲解。

控制寄存器定时器/计数器T0和T1有2个控制寄存器-TMOD和TCON,它们分别用来设置各个定时器/计数器的工作方式,选择定时或计数功能,控制启动运行,以及作为运行状态的标志等。

其中,TCON寄存器中另有4位用于中断系统。

定时器/计数器方式寄存器TMOD:

   定时器方式控制寄存器TMOD在特殊功能寄存器中,字节地址为89H,无位地址。

TMOD的格式如下图所示。

由图可见,TMOD的高4位用于T1,低4使用于T0,4种符号的含义如下:

GATE:

门控制位。

GATE和软件控制位TR、外部引脚信号INT的状态,共同控制定时器/计数器的打开或关闭。

C/T:

定时器/计数器选择位。

C/T=1,为计数器方式;C/T=0,为定时器方式。

M1M0:

工作方式选择位,定时器/计数器的4种工作方式由M1M0设定。

定时器/计数器方式控制寄存器TMOD不能进行位寻址,只能用字节传送指令设置定时器工作方式,低半字节定义为定时器0,高半字节定义为定时器1。

复位时,TMOD所有位均为0。

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

TCON在特殊功能寄存器中,字节地址为88H,位地址(由低位到高位)为88H一8FH,由于有位地址,十分便于进行位操作。

TCON的作用是控制定时器的启、停,标志定时器溢出和中断情况。

TCON的格式如下图所示。

其中,TFl,TRl,TF0和TR0位用于定时器/计数器;IEl,ITl,IE0和IT0位用于中断系统。

各位定义如下:

TF1:

定时器1溢出标志位。

当字时器1计满溢出时,由硬件使TF1置“1”,并且申请中断。

进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件清“0”。

TR1:

定时器1运行控制位。

由软件清“0”关闭定时器1。

当GATE=1,且INT1为高电平时,TR1置“1”启动定时器1;当GATE=0,TR1置“1”启动定时器1。

TF0:

定时器0溢出标志。

其功能及操作情况同TF1。

TR0:

定时器0运行控制位。

其功能及操作情况同TR1。

IE1:

外部中断1请求标志。

IT1:

外部中断1触发方式选择位。

IE0:

外部中断0请求标志。

IT0:

外部中断0触发方式选择位。

TCON中低4位与中断有关,我们将在下节课讲中断时再给予讲解。

由于TCON是可以位寻址的,因而如果只清溢出或启动定时器工作,可以用位操作命令。

例如:

执行“CLRTF0”后则清定时器0的溢出;执行“SETBTR1”后可启动定时器1开始工作(当然前面还要设置方式定)。

定时器/计数器的初始化:

由于定时器/计数器的功能是由软件编程确定的,所以一般在使用定时/计数器前都要对其进行初始化,使其按设定的功能工作。

初始货的步骤一般如下:

1、确定工作方式(即对TMOD赋值);

2、预置定时或计数的初值(可直接将初值写入TH0、TL0或TH1、TL1);

3、根据需要开放定时器/计数器的中断(直接对IE位赋值);

4、启动定时器/计数器(若已规定用软件启动,则可把TR0或TR1置“1”;若已规定由外中断引脚电平启动,则需给外引脚步加启动电平。

当实现了启动要求后,定时器即按规定的工作方式和初值开始计数或定时)。

因为在不同工作方式下计数器位数不同,因而最大计数值也不同。

现假设最大计数值为M,那么各方式下的最大值M值如下:

方式0:

M=213=8192

方式1:

M=216=65536

方式2:

M=28=256

方式3:

定时器0分成两个8位计数器,所以两个M均为256。

因为定时器/计数器是作“加1”计数,并在计数满溢出时产生中断,因此初值X可以这样计算:

X=M-计数值

定时器/计数器的四种工作方式:

   定T0或T1无论用作定时器或计数器都有4种工作方式:

方式0、方式1、方式2和方式3。

除方式3外,T0和T1有完全相同的工作状态。

下面以T1为例,分述各种工作方式的特点和用法。

工作方式0:

13位方式由TL1的低5位和TH1的8位构成13位计数器(TL1的高3位无效)。

工作方式0的结构见下图:

为定时/计数选择:

C/T=0,T1为定时器,定时信号为振荡周期12分频后的脉冲;C/T=l,T1为计数器,计数信号来自引脚T1的外部信号。

定时器T1能否启动工作,还受到了R1、GATE和引脚信号INT1的控制。

由图中的逻辑电路可知,当GATE=0时,只要TR1=1就可打开控制门,使定时器工作;当GATE=1时,只有TR1=1且INT1=1,才可打开控制门。

GATE,TR1,C/T的状态选择由定时器的控制寄存器TMOD,TCON中相应位状态确定,INT1则是外部引脚上的信号。

在一般的应用中,通常使GATE=0,从而由TRl的状态控制Tl的开闭:

TRl=1,打开T1;TRl=0,关闭T1。

在特殊的应用场合,例如利用定时器测量接于INT1引脚上的外部脉冲高电平的宽度时,可使GATE=1,TRl=1。

当外部脉冲出现上升沿,亦即INT1由0变1电平时,启动T1定时,测量开始;一旦外部脉冲出现下降沿,亦即INT1由l变O时就关闭了T1。

定时器启动后,定时或计数脉冲加到TLl的低5位,从预先设置的初值(时间常数)开始不断增1。

TL1计满后,向THl进位。

当TL1和THl都计满之后,置位T1的定时器回零标志TFl,以此表明定时时间或计数次数已到,以供查询或在打开中断的条件下,可向CPU请求中断。

如需进一步定时/计数,需用指令重置时间常数。

方式0是13位计数结构的工作方式,其计数器由TH0全部8位和TL0的低5位构成。

当TL0的低5位计数溢出时,向TH0进位,而全部13位计数溢出时,则向计数溢出标志位TF0进位。

⑵TMOD寄存器初始化

为把定时器/计数器1设定为方式0,则M1M0=00;为实现定时功能,应使C/T=0;为实现定时

器/计数器1的运行控制,则GATE=0。

定时器/计数器0不用,有关位设定为0。

因此TMOD寄存

器应初始化为00H。

⑶由定时器控制寄存器TCON中的TR1位控制定时的启动和停止TR1=1启动,TR1=0停止。

工作方式1:

1是16位计数结构的工作方式,计数器由TH0全部8位和TL0全部8位构成。

与工作方式0基本相同,区别仅在于工作方式1的计数器TL1和TH1组成16位计数器,从而比工作方式0有更宽的定时/计数范围。

工作方式2

8位自动装入时间常数方式。

由TLl构成8位计数器,THl仅用来存放时间常数。

启动T1前,TLl和THl装入相同的时间常数,当TL1计满后,除定时器回零标志TFl置位,具有向CPU请求中断的条件外,THl中的时间常数还会自动地装入TLl,并重新开始定时或计数。

所以,工作方式2是一种自动装入时间常数的8位计数器方式。

由于这种方式不需要指令重装时间常数,因而操作方便,在允许的条件下,应尽量使用这种工作方式。

当然,这种方式的定时/计数范围要小于方式0和方式1。

工作方式2的结构见下图.

当计数溢出后,不是像前两种工作方式那样通过软件方法,而是由预置寄存器TH以硬件方法自动给计数器TL重新加载。

变软件加载为硬件加载。

   初始化时,8位计数初值同时装入TL0和TH0中。

当TL0计数溢出时,置位TF0,同时把保存在预置寄

存器TH0中的计数初值自动加载TL0,然后TL0重新计数。

如此重复不止。

这不但省去了用户程序中的

重装指令,而且也有利于提高定时精度。

但这种工作方式下是8位计数结构,计数值有限,最大只能到255。

这种自动重新加载工作方式非常适用于循环定时或循环计数应用,例如用于产生固定脉宽的脉冲,

此外还可以作串行数据通信的波特率发送器使用。

工作方式3

2个8位方式。

工作方式3只适用于定时器0。

如果使定时器1为工作方式3,则定时器1将处于关闭状态。

当T0为工作方式3时,THo和TL0分成2个独立的8位计数器。

其中,TL0既可用作定时器,又可用作计数器,并使用原T0的所有控制位及其定时器回零标志和中断源。

TH0只能用作定时器,并使用T1的控制位TRl、回零标志TFl和中断源,见下图。

通常情况下,T0不运行于工作方式3,只有在T1处于工作方式2,并不要求中断的条件下才可能使用。

这时,T1往往用作串行口波特率发生器(见1.4),TH0用作定时器,TL0作为定时器或计数器。

所以,方式3是为了使单片机有1个独立的定时器/计数器、1个定时器以及1个串行口波特率发生器的应用场合而特地提供的。

这时,可把定时器l用于工作方式2,把定时器0用于工作方式3。

下才可能使用。

这时,T1往往用作串行口波特率发生器,TH0用作定时器,TL0作为定时器或计数器。

所以,方式3是为了使单片机有1个独立的定时器/计数器、1个定时器以及1个串行口波特率发生器的应用

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1