单片机时钟计时器的设计论文文档格式.docx

上传人:b****6 文档编号:18859477 上传时间:2023-01-01 格式:DOCX 页数:36 大小:1.57MB
下载 相关 举报
单片机时钟计时器的设计论文文档格式.docx_第1页
第1页 / 共36页
单片机时钟计时器的设计论文文档格式.docx_第2页
第2页 / 共36页
单片机时钟计时器的设计论文文档格式.docx_第3页
第3页 / 共36页
单片机时钟计时器的设计论文文档格式.docx_第4页
第4页 / 共36页
单片机时钟计时器的设计论文文档格式.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

单片机时钟计时器的设计论文文档格式.docx

《单片机时钟计时器的设计论文文档格式.docx》由会员分享,可在线阅读,更多相关《单片机时钟计时器的设计论文文档格式.docx(36页珍藏版)》请在冰豆网上搜索。

单片机时钟计时器的设计论文文档格式.docx

2.单片机采用了AT89C52系列,这种单片机具有足够的空余硬件资源,可以实现其他的扩充功能。

3、AT89C52提供以下标准功能:

8k字节Flash闪速存储器,256字节部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片震荡器及时钟电路。

同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的容,但震荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。

AT89C52的功能与C51的功能基本上是相同的。

(1)、中断源

MCS-51单片机是一个多中断源的单片机,有五个中断源:

外部

中断0、定时器0中断、外部中断1、定时器1中断和串行接收或发送中断。

各中断源的中断处理程序入口地址如下表1所示:

表1中断向量表

中断源

入口地址

外部中断0

0003H

定时器0

000BH

外部中断1

0013H

定时器1

001BH

串行口

0023H

(2)、中断控制

A、中断的开放或禁止是由中断允许寄存器IE控制的。

IE的格式如下:

EA

ES

ET1

EX1

ET0

EX0

EA-中断总允许位。

EA=1,开放总中断,而各个中断源的中断请允许还是禁止,分别由各自的中断允许位确定;

EA=0,禁止一切中断。

ES-串行口中断允许位。

ET1和ET0分别是定时器T1和T0的中断允许位。

EX1和EX0分别是外部中断1(INT1)和外部中断0(INT0)的中断允许位。

以上五个中断允许位的意义是:

0为禁止中断,1为允许中断。

B、中断源优先级控制-中断优先级寄存器IP。

MCS-51单片机有高、低两个中断优先级,5个中断源可由程序设置为高优先级中断或低优先级中断,实现二级中断嵌套。

一个正在执行的低优先级中断源的中断服务程序,能被高优先级中断源所中断,但不能被同级别的另一个中断源所中断。

MCS-51单片机的5个中断源的优先级由中断优先级寄存器IP的相应位设定。

IP格式如下:

PS

PT1

PX1

PT0

PX0

3.时钟计时器电路系统的总体设计框图如图1所示。

图1

二、原理分析;

1.采用了AT89C52单片机最化应用设计;

采用共阳7段LED显示器;

P0口输出段码数据;

P2.0----P2.5口作列扫描输出;

P1.0、P1.1、P1.2、和P1.3口接4个按钮开关,用于调时及功能设置;

为了提供共阳LED数码管的列扫描驱动电压,用三极管9012作电源驱动输出;

采用12MHz晶振,来提高秒计时的精确性。

2.计时采用了定时器T0中断来实现。

秒表使用定时器T1中断来完成。

主程序循环调用显示子程序和查键子程序,当端口有开关按下时,转入相应功能程序。

程序的设计主程序执行流程如图3

图3;

3.显示子程序;

时间显示子程序每次显示6个连续存单元的十进制BCD码数据,首地址在地址在调用显示程序先指定。

存中50H-----55H为闹钟定时单元,60H---65H为秒表计时单元,70H---75H为时钟显示单元。

由于采用7段共阳LED数码管动态扫描实现数据显示,所以显示用十进制BCD码数据的对应段码存放在在ROM表中。

显示时,先取出存地址中的数据,然后查得对应的显示用段码从P0口输出,P2口将对应的数码管选中供电,就能显示该地址单元的数据值。

为了显示小数点及“---”、“A”等特殊字符,在显示班级和计时时应采用不同的显示子程序。

4.定时器T0中断服务程序;

定时器T0用于时间计时,定时溢出中断周期为50ms,中断进入先进行定时中断初值校正,当中断累计20次时,对秒计数单元进行加1操作。

时钟计数单元地址分别在70H——71H(秒),76H---77H(分),78H---79(时)中,最大计时值为23时59分59秒。

7AH单元存放“熄灯符”数据(#0AH),用于时间调整时的闪烁功能。

在计数单元中,采用十进制BCD码计数,满10进位。

T0中断计时程序流程如图4;

图4;

5.定时器T0中断服务程序;

T1中断程序用于批示时间调整单元的闪亮或秒表计数,在时间时间状态下,每过0。

3S左右,将对应应单元的显示数据换成“熄灭符”数据(#AH)。

这样,在调整时间时,对应调整单元的显示数据会间隔闪亮。

在作秒表计时时,每10MS中断1次,计数单元加1,每100次为1S。

秒表计计数单元地址在60H———61H(10毫秒)、62H——63H(秒)、64H-———65H(分)中,最大计数值为99分59.99秒。

T1中断服务程序如图5;

图5

6.调时功能程序;

1.按下P1.0口按键,若按下时间小于1S则进入省电状态;

否则进入调分状态,等待操作,此时计时器停止走动。

当再按下P1.0口按键时,若按下时间小于0.5S,则时间加1分钟;

若按下时间大于0.5要,则进入小时调整状态。

按下P1.1按键时,可进行减1调整。

在小时调整状态下,当按键按下的时间大于0.5S时,退出时间调整状态,时钟从0S开始计时。

2.秒表功能程序;

在正常时钟状态下,若按下P1.1口按键,则进行时钟/秒表显示功能的转换,秒表中断计时程序启动,显示首地址改为60H,LED将显示秒表计时单元60H----65H中的数据。

按下P1.2口的按键开关,可实现秒表清0,秒表启动,秒表计时暂停功能;

当再按下P1.1口按键时,关闭T1秒表中断计时,显示首地址又改为70H,恢复正常时间的显示功能。

四.实验器材

器件名称

规格型号

数量

电阻

510

8

4.7k

6

10k

5

电解电容

47uF\25V

1

10u\16V

2200uf|25v

33uf/25V

陶瓷电容

103

30

2

芯片

AT89C52

芯片插座

40脚

3

20脚

三极管

9012

二极管

IN4007

4

数码管

共阳型

晶振

12MHz

单面覆铜板

16cm*12cm

五.利用protel99设计电路原理图

1.原理图

2.PCB图

六.调试及性能分析

1硬件调试

1.硬件调试时可先检查印制板及焊接的质量情况,在检查无误后可通电检查LED显示器的点亮状况。

若亮度不理想,可以调整P0口的电阻大小,一般情况下取200欧姆电阻即可获得满意的亮度效果。

2.软件调试

3.性能分析

按照设计程序分析,LED显示器动态扫描的频率约为167Hz,实际使用观察时完全没有闪烁。

上电时具有一个滚动显示子程序,可以方便的显示制作日期等信息。

七、心得体会

在这次的课程设计中我遇到了些问题,如:

数码管一直显示00而不跳动,原因就是少了返回指令SJMP;

电路焊接短路时会导致数码管全亮,而不显示数字。

在解决这些问题时也是一个再次学习的过程。

从开始接到论文要求到时钟的实现,再到论文文章的完成,每走一步对我来说都是新的尝试与挑战,这也是我在大学期间独立完成的最大的项目。

在这段时间里,我学到了很多知识也有很多感受,我开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己非常稚嫩作品一步步完善起来,每一次改进都是我学习的收获,每一次试验的成功都会让我兴奋好一段时间。

这次论文的经历也会使我终身受益,我感受到做论文是要用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破。

通过设计,我在老师的精心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域这对我今后进一步学习计算机方面的知识有极大的帮助。

在此,忠心感谢老师以及许多同学的指导和支持。

八、参考文献;

1、《单片机课程设计指导》楼然苗、光飞,北京:

北京航空航天大学出版社,2007.7

2.《单片机原理及应用》何桥,北京:

中国铁道出版社,2007.12

3、《单片机教程习题与解答》俊谟,迎新北京:

北京航空航天大学出版社

2003.3

4.《单片机控制工程实践技术》付家才北京化学工业出版社2004.3

九.时钟计时器使用说明书

一、概述

由芯片AT89C52构成的时钟计时器,具有体积小,成本低,抗干扰能力强,面向控制,可以实现分机各分布式控制等优点。

它广泛应用于各种继电器、电磁开关,控制器、廷时器、定时器等的时间测试。

目前所使用的电秒表大多是指针式或集成电路型的,结构相对复杂、测试功能单一。

本仪器还具有实时时钟、手动计时的功能。

(正常工作电压5V)

二、技术参数

1.兼容MCS51指令系统·

8k可反复擦写(>

1000次)FlashROM

 2.32个双向I/O口·

256x8bit部RAM

 3.3个16位可编程定时/计数器中断·

时钟频率0-12MHz

 4.2个串行中断·

可编程UART串行通道

 5.2个外部中断源·

共6个中断源

 6.2个读写中断口线·

3级加密位

 7.低功耗空闲和掉电模式·

软件设置睡眠和唤醒功

三、工作原理

系统硬件设计

时钟计时器采用AT89C52单片机最小化应用设计;

P1口输出段码数据;

P2.0~P2.5作列扫描输出;

P1.1、P1.1,P1.2和P1.3接按钮开关,用于调时及功能设置;

采用12MHZ的晶振AT89C52作为主控芯片,定期的读取时钟芯片DS1302中的时间并把小时和肥以示在6位LED中,显示时间。

四、结构特征

它体积小,外形尺寸:

16cm*12cm、无外观修饰,完全裸露部元件、操作方便,便于安装、拆卸与维修。

五、使用和维护

1、使用

(1)与输入信号端连接,接5V直流电。

(2)调时功能按下P1.0口按键,若按下时间小于1s,则进入省电状态;

当再按下P1.0口按键时,若按下时间小于0.5s,则时间加1分<

钟>

若按下时间大于0.5s,则进入<

小>

时调整状态。

按下P1.1时。

在<

时调整状态下,当按键按下的时间大于0.5s时,退出时间调整状态,时钟从0s开始计时。

(3)在正常时钟状态下,若按下P1.1口按键,则进行时钟/秒表显示功能的转换,秒表中断计时程序启动,显示首址改为60H,LED将显示秒表计时单元60H-65H中的数据。

按下P1.2口说我按键开关,可实现秒表清0、秒表启动、暂停功能;

再按下P1.1口时,关闭T1秒表中断计时,显示首址又改为70H,恢复正常时间的显示功能。

2、维护

(1)断电情况下,用万用表检是否有元器件松动,有松动则进行烙牢;

(2)用万用表检测元器件是否接触良好;

(3)检测输入电压是否是5V。

(4)不使用时断开电源,确保电路安全;

(5)尽量保持元件清洁、牢固.

十.时钟计时器技术说明书

一、产品概述

由芯片AT89C52构成的时钟计时器,这种单片机具有足够的空余硬件资源,可以实现其他的扩充功能。

考虑使用电池供电,时钟显示有6位。

采用动态扫描法实现数码管的显示。

电源电压为5V。

单片机具有体积小,成本低,抗干扰能力强,面向控制,可以实现分机各分布式控制等优点。

1.芯片AT89C52图

2.兼容MCS51指令系统·

3.32个双向I/O口·

4.3个16位可编程定时/计数器中断·

时钟频率0-24MHz

5.2个串行中断·

6.2个外部中断源·

7.2个读写中断口线·

8.低功耗空闲和掉电模式·

采用12MHZ的晶振AT89C52作为主控芯片,用于产生时钟信号。

时钟正面图

时钟反面

附录

AT89C52时钟程序;

;

*********************************************************************************************;

以下程序能用于24小时计时,能作为秒表使用,能定时闹铃1分钟(也可关).

使用方法:

开机后在00:

00:

00起开始计时,

(1)长按P1.0进入调分状态:

分单元闪烁

按P1.0加1,按P1.1减1.再长按P1.0进入时调整状态,时单元闪烁,加减调整同调分.

按长按退出调整状态.

(2)按下P1.1进入秒表状态:

按P1.2暂停,再按P1.2秒表清零,再按

P1.2秒表又启动,按P1.1退出秒表回到时钟状态.(3)按P1.3进入设定闹时状态:

00:

-,可进

行分设定,按P1.2分加1,再按P1.3为时调整,00:

-,按P1.2时加1,按P1.1闹铃有效,显示为00:

-0,再按

P1.1闹铃无效(显示00:

-,),按P1.3调闹钟结束.在闹铃时可按P1.3停闹,不按闹铃1分钟.

定时器T0、T1溢出周期为50MS,T0为秒计数用,T1为调整时闪烁及秒表定时用,

P1.0、P1.1、P1.2、P1.3为调整按钮,P0口为字符输出口,P2为扫描口,P1.7为蜂呜器口,采用共阳显示管。

50H-55H为闹钟定时单元,60H-65H为秒表计时单元,70H-75H为显示时间单元,76H-79H为分时计时单元。

03H标志=0时钟闪烁,=1秒表,05H=0,不闹铃,=1要闹铃.07H每秒改变一次,用作间隔呜叫.

***********************************************************************************************;

DISPFIRSTEQU30H;

显示首址存放单元

BELLEQUP1.7;

小喇叭

CONBSEQU2FH;

存放报时次数

****************************************

中断入口程序;

ORG0000H;

程序执行开始地址

LJMPSTART;

跳到标号START执行

ORG0003H;

外中断0中断程序入口

RETI;

外中断0中断返回

ORG000BH;

定时器T0中断程序入口

LJMPINTT0;

跳至INTTO执行

ORG0013H;

外中断1中断程序入口

外中断1中断返回

ORG001BH;

定时器T1中断程序入口

LJMPINTT1;

跳至INTT1执行

ORG0023H;

串行中断程序入口地址

串行中断程序返回

以下程序开始;

整点报时用

QQQQ:

MOVA,#10H

MOVB,79H

MULAB

ADDA,78H

MOVCONBS,A

BSLOOP:

LCALLDS20MS

LCALLDL1S

DJNZCONBS,BSLOOP

CLR08H;

清整点报时标志

AJMPSTART1

主程序开始;

START:

LCALLST;

上电显示年月日及班级学号

MOVR0,#00H;

清00H-7FH存单元

MOVR7,#80H;

CLEARDISP:

MOV@R0,#00H;

INCR0;

DJNZR7,CLEARDISP;

MOV20H,#00H;

清20H(标志用)

MOV7AH,#0AH;

放入"

熄灭符"

数据

MOVTMOD,#11H;

设T0、T1为16位定时器

MOVTL0,#0B0H;

50MS定时初值(T0计时用)

MOVTH0,#3CH;

50MS定时初值

MOVTL1,#0B0H;

50MS定时初值(T1闪烁定时用)

MOVTH1,#3CH;

SETBEA;

总中断开放

SETBET0;

允许T0中断

SETBTR0;

开启T0定时器

MOVR4,#14H;

1秒定时用计数值(50MS×

20)

MOVDISPFIRST,#70H;

显示单元为70-75H

以下主程序循环

START1:

LCALLDISPLAY;

调用显示子程序

JNBP1.0,SETMM1;

P1.0口为0时转时间调整程序

JNBP1.1,FUNSS;

秒表功能,P1.1按键调时时作减1加能

JNBP1.2,FUNPT;

秒表STOP,PUSE,CLR

JNBP1.3,TSFUN;

定时闹铃设定

JB08H,QQQQ

AJMPSTART1;

P1.0口为1时跳回START1

FUNPT:

LJMPFUNPTT

以下闹铃时间设定程序,按P1.3进入设定

TSFUN:

JBP1.3,START1;

WAIT113:

JNBP1.3,WAIT113;

等待键释放

JB05H,CLOSESP;

闹铃已开的话,关闹铃

MOVDISPFIRST,#50H;

进入闹铃设定程序,显示50-55H闹钟定时单元

MOV50H,#0CH;

"

-"

闹铃设定时显示格式00:

-

MOV51H,#0AH;

黑"

DSWAIT:

SETBEA

LCALLDISPLAY

JNBP1.2,DSFINC;

分加1

JNBP1.0,DSDEC;

分减1

JNBP1.3,DSSFU;

进入时调整

AJMPDSWAIT

CLOSESP:

CLR05H;

关闹铃标志

CLRBELL

DSSFU:

LCALLDS20MS;

消抖

JBP1.3,DSWAIT

LJMPDSSFUNN;

SETMM1:

LJMPSETMM;

转到时间调整程序SETMM

DSFINC:

JBP1.2,DSWAIT

DSWAIT12:

等键释放

JNBP1.2,DSWAIT12

CLREA

MOVR0,#53H;

LCALLADD1;

闹铃设定分加1

MOVA,R3;

分数据放入A

CLRC;

清进位标志

CJNEA,#60H,ADDHH22;

ADDHH22:

JCDSWAIT;

小于60分时返回

ACALLCLR0;

大于或等于60分时分计时单元清0

DSDEC:

JBP1.0,DSWAIT

DSWAITEE:

LCALLD

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

当前位置:首页 > 党团工作 > 党团建设

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

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