数字时钟课程设计.docx

上传人:b****7 文档编号:9025154 上传时间:2023-02-02 格式:DOCX 页数:21 大小:115.22KB
下载 相关 举报
数字时钟课程设计.docx_第1页
第1页 / 共21页
数字时钟课程设计.docx_第2页
第2页 / 共21页
数字时钟课程设计.docx_第3页
第3页 / 共21页
数字时钟课程设计.docx_第4页
第4页 / 共21页
数字时钟课程设计.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

数字时钟课程设计.docx

《数字时钟课程设计.docx》由会员分享,可在线阅读,更多相关《数字时钟课程设计.docx(21页珍藏版)》请在冰豆网上搜索。

数字时钟课程设计.docx

数字时钟课程设计

摘要

单片机广泛应用于实时控制、智能仪器、仪表通信和家用电器等各个领域,所涉及的内容非常广泛,是计算机科学、电子学、自动控制等基础知识的综合应用。

单片机的应用系统有硬件和软件所组成。

本设计基于单片机技术原理,单片机内部的定时/计数器来实现数字时钟的方法,本设计由单片机AT89S52芯片和七段数码管显示为核心,通过硬件电路的制作以及软件程序的编制,制作一个多功能的数字时钟系统。

该时钟系统主要由时钟模块、七段数码管显示模块、以及按键控制模块等组成。

能够准确的显示时间(显示格式为时时,分分,秒秒,12小时或24小时制),可随时进行时间调整。

设计一硬件软件化为指导思想,大部分功能通过软件编程来实现,电路简单明了,系统稳定性高。

由于系统所用元器件比较少,单片机被所占用的I/O不多,因此系统具有一定的可扩展性。

本次设计立足现实,以方便实用为目标,结合大学学习的知识结构,确定了基于单片机控制的电子闹钟,作为本论文的设计目标。

本课题设计的电子闹钟是以单片机(AT89S52)为系统核心,通过相应的软件开发,软硬件相结合,实现数字闹钟功能。

其硬件部分难点在于元器件的选择、布局及安装焊接。

软件部分的难点在于软件的选择和程序的编写调试。

 

目录

摘要1

1概述3

1.1课程设计的要求4

1.1.1设计指标4

1.1.2设计要求4

1.1.3制作要求4

1.1.4编写设计报告4

1.2课程设计的目的意义4

2系统总体方案及硬件设计5

2.1系统方案的确定5

2.1.1按键5

2.1.2显示器6

2.1.3计时部分6

2.1.4发音部分6

2.1.5显示器驱动电路6

2.1.6电源6

2.2系统功能及使用方法6

2.3硬件设计7

2.3.1电子钟的硬件电路7

2.3.2键盘及读数原理8

3软件设计9

3.1电子钟程序流程框图9

3.2键扫子程序流程框图9

3.3显示子程序10

4实验设计仿真12

4.1仿真图12

4.2软件部分烧写调试12

5课程设计体会13

附录15

附录1:

设计原理图15

附录2:

设计程序16

 

1概述

20世界末,电子技术得了飞速的发展,在其推动下,现代电子产品几乎在社会各个领域都有所表现,有力的推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。

目前,单片机正朝着高性能和多种产品方形发展的趋势将进一步向低功耗。

小体积、大容量、高性能、低价格和外围电路内装化等几个方面发张

数字时钟是采用数字电路实现对时分,秒,数字显示的计时装置,广泛用于个人家庭,车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,是的数字时钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。

诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、甚至各种定时电气的自动启用等,所有的这些都是以钟表数字化为基础的。

因此,研究数字时钟扩大其应用,有着非常现实的意义

1.1课程设计的要求

1.1.1设计指标

1时间以12小时为一个周期;

2显示时、分、秒;

3具有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间;

4计时过程具有报时功能,当时间到达整点前10秒进行蜂鸣报时;

5为了保证计时的稳定及准确须由晶体振荡器提供表针时间基准信号。

1.1.2设计要求

1画出电路原理图(或仿真电路图);

2元器件及参数选择;

3电路仿真与调试;

4PCB文件生成与打印输出。

1.1.3制作要求自行装配和调试,并能发现问题和解决问题。

1.1.4编写设计报告写出设计与制作的全过程,附上有关资料和图纸,有心得体会。

1.2课程设计的目的意义

巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学的知识解决工业控制能力。

培养针对课题需要,选择和查阅有关手册。

图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力。

通过对课程设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。

 

2系统总体方案及硬件设计

2.1系统方案的确定

根据题目的要求,本系统除了核心器件单片机外主要还包括了以下几个部分:

2.1.1按键

按键最少化。

如果设置过多按键,将会占用较多I/O口,而且会给布线带来不便,因此,此方案适用于按键较少的情况。

如果选择此方案,由于按键较少,在修改时间或设置闹铃时间时就不能直接输入,只能通过加或减完成,稍为麻烦一些,但其程序简单。

2.1.2显示器

用数码管作为显示器。

数码管的驱动电路简单,使用方便,如果选择了此方案,那么在夜间看时间的时候就不需要有光源,非常方便。

其缺点是功耗较大。

2.1.3计时部分

如果使用时钟芯片,系统就不怕掉电且时间精确。

但这种芯片比较贵,况且,设计本系统主要是为了学习单片机程序的编写和调试以及设计硬件电路的一些方法,因此采用软件的方法来计时而没有采用价格较高的时钟芯片。

2.1.4发音部分

用软件方法产生方波输出,通过三极管放大后驱动蜂鸣器发音,这样就可以省去硬件振荡电路,降低成本。

2.1.5显示器驱动电路

由于通过数码管公共及的电流较大,因此用三极管来驱动位码。

为了避免过多地使用分立元件,采用了一片74LS573来驱动段码。

2.1.6电源

如果是用电池供电,就比较方便携带,但是本系统,采用了数码管作为显示器,功耗较大,需要经常更换电池。

况且,本系统的体积较大,即使使用电池供电也不能随身携带,因此,用电池供电不大合适,所以用外部稳压电源来供电。

2.2系统功能及使用方法

系统上电后,自动进入时钟状态。

若在此时按下“设定”键,显示器上将出现闪亮位,再按“+”或“-”则可以加或减闪亮位内容,修改完一位后再按“设定”可改变闪亮位位置继续修改下一位。

修改完成后按“确定”键即可退出设定状态进入正常显示时钟状态。

在正常显示时钟状态时按下“闹钟”键可进入闹钟状态,此时按“+”或“-”可上下翻动闹钟表;按“设定”键可修改当前显示的闹钟时间,修改方法与修改时钟相同。

在查看闹钟表状态下按“闹钟”键可以开/关当前显示的闹钟时间,当显示器第5位显示“-”时表示闹铃已开。

按“时钟”键返回正常显示时钟状态。

2.3硬件设计

2.3.1电子钟的硬件电路

单片机一上电时是00:

00。

 

 

2.3.2键盘及读数原理

键盘是人与微机打交道的主要设备,按键的读取容易引起误动作。

可采用软件去抖动的方法处理,软件的触点在闭合和断开的时候会产生抖动,这时触点的逻辑电平是不稳定的,如不采取妥善处理的话,将引起按键命令错误或重复执行,在这里采用软件延时的方法来避开抖动,延时时间20ms。

时分显示采用动态扫描,以降低对单片机端口数的要求,同时也降低系统的功耗。

 

3软件设计

3.1电子钟程序流程框图

3.2键扫子程序流程框图

 

 

3.3显示子程序

这次设计共用了4个数码管,时、分各占两位,显示子程序首先对时、分进行分离,然后在对时、分进行位选和段选的分时传送让数码管进行动态扫描显示。

 

4实验设计仿真

4.1仿真图

4.2软件部分烧写调试

通过下载线将程序下载至电路板内,即对电路板提供电源,打开软件,设置之后进行调试,可以在电路板上进行模拟,观察实验结果。

5课程设计体会

这次课程设计持续了一周时间,开始一直就想着等别人做出来再去请教别人,没想到,自己做出来的人并不多,也没有谁能够帮我的,于是就和杨广旭去图书馆借书自己琢磨。

借了胡辉主编的《单片机应用系统设计与训练》,细细阅读了里面关于电子钟设计的介绍,学到了蛮多知识的。

自己还是去认真再次学习了汇编语言的。

虽然大部分都是借鉴的,只是照着描描但自己还是用心去弄懂了。

有时间还是会更多锻炼的。

感觉这些软件都越来越顺手了。

 

参考文献

[1]李广弟等.单片机基础[M].北京航空航天出版社,2001.

[2]王东峰等.单片机C语言应用100例[M].电子工业出版社,2009.

[3]陈海宴.51单片机原理及应用[M].北京航空航天大学出版社,2010.

[4]刘守义等.单片机技术基础[M].西安电子科技大学出版社,2007.

[5]钟富昭等.8051单片机典型模块设计与应用[M].人民邮电出版社,2007.

[6]李平等.单片机入门与开发[M].机械工业出版社,2008.

 

附录

附录1:

设计原理图

附录2:

设计程序

;;;12M

T_MinuteEQU25H;定义定时分单元

T_HourEQU26H;定义定时时单元

ORG0000H

LJMPMAIN

ORG0003H

LJMPSECTION

ORG000BH

;************MAINPROGRAM***************

ORG0100H

MAIN:

MOVSP,#50H

MOVTCON,#01H;定义中断方式

MOV20H,#00H;BINSECOND

MOV21H,#00H;BINMINUTE

MOV22H,#00H;BINHOUR

MOV23H,#00H

MOV30H,#00H;BCDSECOND

MOV31H,#00H;

MOV32H,#00H;BCDMINUTE

MOV33H,#00H;

MOV34H,#00H;BCDHOUR

MOV35H,#00H

MOV25H,#00

MOV26H,#00

MOVTMOD,#01H;16位计数器

MOVTH0,#03CH

MOVTL0,#0B0H

MOVIE,#10001111B

SETBTR0;T0启动计数

MOVR2,#10

MOVP2,#0FFH

ML1:

LCALLDISP

JNBP1.1,ML1_MINU;时间设置,分钟

JNBP1.2,ML1_HOUR;;时间设置,小时

LJMPML1

ML1_MINU:

LCALLDELAY

MOVC,P1.1

JCML1

STOP1:

MOVC,P1.1

LCALLDISP

JNCSTOP1

LCALLDELAY

MOVC,P1.1

JNCSTOP1

MIN:

INC21H

MOVA,21H

CJNEA,#3CH,GO11

MOV21H,#0

MOV32H,#0

MOV33H,#0

LJMPML1

GO11:

MOVB,#0AH

DIVAB

MOV32H,B

MOV33H,A

AJMPML1

ML1_HOUR:

LCALLDELAY

MOVC,P1.2

JCML1

STOP12:

MOVC,P1.2

LCALLDISP

JNCSTOP12

LCALLDELAY

MOVC,P1.2

JNCSTOP12

INC22H

MOVA,22H

CJNEA,#18H,GO12

MOV22H,#0

MOV34H,#0

MOV35H,#0

LJMPML1

GO12:

MOVB,#0AH

DIVAB

MOV34H,B

MOV35H,A

LJMPML1

DELAY:

MOVR4,#14H

DL00:

MOVR5,#0FFH

DL11:

DJNZR5,DL11

DJNZR4,DL00

RET

;**********TIMEPROCESS**************

TIME:

PUSHACC

PUSHPSW

MOVTMOD,#01H

MOVTH0,#03CH

MOVTL0,#0B0H

DJNZR2,RET0

MOVR2,#10

CPLP1.6

MOVA,20H

CLRC

INCA

CJNEA,#120,GO1

MOV20H,#0

MOV30H,#0

MOV31H,#0

MOVA,21H

INCA

CJNEA,#3CH,GO2

MOV21H,#0H

MOV32H,#0

MOV33H,#0

MOVA,22H

INCA

CJNEA,#18H,GO3

MOV22H,#00H

MOV34H,#0

MOV35H,#0

AJMPRET0

GO1:

MOV20H,A

MOVB,#0AH

DIVAB

MOV31H,A

MOV30H,B

AJMPRET0

GO2:

MOV21H,A

MOVB,#0AH

DIVAB

MOV33H,A

MOV32H,B

AJMPRET0

GO3:

MOV22H,A

MOVB,#0AH

DIVAB

MOV35H,A

MOV34H,B

AJMPRET0

RET0:

MOVA,T_HOUR

CJNEA,22H,RET1

MOVA,T_MINUTE

CJNEA,21H,RET1

 

W2:

MOVR1,#99

W3:

MOVR3,#56

DJNZR3,$

CPLP1.7

DJNZR1,W3

LJMPRET12

DELAY11:

MOVR7,#22

DE1:

DJNZR7,DE1

RET

RET1:

SETBP1.7

MOVTH0,#03CH

MOVTL0,#0B0H

RET12:

POPPSW

POPACC

RETI

;;;////*******--DISPLAYPART---+++++

DISP:

MOVR0,#32H

MOVR3,#0FEH

MOVA,R3

PLAY:

MOVP2,A

MOVA,@R0

MOVDPTR,#DSEG1

MOVCA,@A+DPTR

MOVP0,A

LCALLDL1

MOVP2,#0FFH

MOVA,R3

RLA

JNBACC.4,LD1

INCR0

MOVR3,A

LJMPPLAY

LD1:

RET

;;;;;;;;;;;;;;;DELAY

DL1:

MOVR7,#05H

DL:

MOVR6,#0FFH

DL6:

DJNZR6,$

DJNZR7,DL

RET

DSEG1:

DB3FH,06H,5BH,4FH,66H

DB6DH,7DH,07H,7FH,6FH

;///////***//////*******/////////////

SECTION:

PUSHACC

PUSHPSW

ML2:

MOV30H,#0

MOV31H,#0

MOVA,25H

MOVB,#0AH

DIVAB

MOV32H,B

MOV33H,A

MOVA,26H

MOVB,#0AH

DIVAB

MOV34H,B

MOV35H,A

ML22:

LCALLDISP

JNBP1.1,ML2_MINU;时间设置,分钟

JNBP1.2,ML2_HOUR;;时间设置,小时

JNBP1.3,PPP

LJMPML2

ML2_MINU:

LCALLDELAY

MOVC,P1.1

JCML2

STOP2:

MOVC,P1.1

LCALLDISP

JNCSTOP2

LCALLDELAY

MOVC,P1.1

JNCSTOP2

MIN2:

INC25H

MOVA,25H

CJNEA,#3CH,GO21

MOV25H,#0

MOV32H,#0

MOV33H,#0

LJMPML2

GO21:

MOVB,#0AH

DIVAB

MOV32H,B

MOV33H,A

AJMPML2

ML2_HOUR:

LCALLDELAY

MOVC,P1.2

JCML2

STOP22:

MOVC,P1.2

LCALLDISP

JNCSTOP22

LCALLDELAY

MOVC,P1.2

JNCSTOP22

INC26H

MOVA,26H

CJNEA,#18H,GO22

MOV26H,#0

MOV34H,#0

MOV35H,#0

LJMPML2

GO22:

MOVB,#0AH

DIVAB

MOV34H,B

MOV35H,A

LJMPML2

PPP:

MOVA,21H

MOVB,#0AH

DIVAB

MOV32H,B

MOV33H,A

MOVA,22H

MOVB,#0AH

DIVAB

MOV34H,B

MOV35H,A

POPPSW

POPACC

RETI

END

 

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

当前位置:首页 > 工程科技 > 能源化工

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

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