基于单片机的电子时钟.docx

上传人:b****6 文档编号:3922871 上传时间:2022-11-26 格式:DOCX 页数:13 大小:182.88KB
下载 相关 举报
基于单片机的电子时钟.docx_第1页
第1页 / 共13页
基于单片机的电子时钟.docx_第2页
第2页 / 共13页
基于单片机的电子时钟.docx_第3页
第3页 / 共13页
基于单片机的电子时钟.docx_第4页
第4页 / 共13页
基于单片机的电子时钟.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

基于单片机的电子时钟.docx

《基于单片机的电子时钟.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子时钟.docx(13页珍藏版)》请在冰豆网上搜索。

基于单片机的电子时钟.docx

基于单片机的电子时钟

基于单片机的电子时钟

毕业论文(设计)开题报告

学生姓名

班级

指导教师

学号

1

毕业论文(设计)题目

基于单片机的电子时钟

选题的意义

数字钟是对时、分、秒、年、月、日数字显示及到时提醒的一个装置由于数字集体电路的发展及石英晶体振荡的广泛应用,使得数字钟的显示远远超过老式钟中标的数字化给人们带来极大的方便。

最常见的数字钟是单片机模块控制,与机械型时钟相比具有更高的准确性、直观性。

具有更长的使用寿命。

所以本文采用基于单片机来设计和制作一个数字电子钟。

通过本论文课题的研究,预计达到:

本设计由单片机AT89S52芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。

与传统机械表相比,它具有走时精确,显示直观等特点。

它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时功能等特点。

该电子钟可以做到的功能:

上电或按键复位后能自动显示系统默认时间“12-00-00”进入时钟运行状态。

具体安排进度:

2012年3月1日—3月30日:

查阅资料,搜集所需信息;根据数字电子钟课题任务制定合理、可行的工作计划;

2012年4月1日—4月30日:

根据所制定的任务书绘制原理图编写程序;

2012年5月1日—5月31日:

编写毕业设计论文,装订成册,进行毕业答辩。

 

指导教师评语

选题合理,具有一定的实用价值,符合专业培养目标,前期准备工作较为充分,设计方案切实可行。

同意开题。

指导教师签名:

2011年3月20日

摘要

近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。

本文介绍了基于单片机的数字钟的设计,详细讨论了它从软件上实现的过程,重点在时钟调整的方式:

查询和中断的比较,然后,对数字钟的稳定性和精确性作了相关的讨论。

在文章的最后,给出了采用中断方式实现的数字钟的源程序。

关键字:

单片机,数字钟,数据缓冲区,中断

Abstract

Inrecentyears,withcomputersintheinfiltrationandthedevelopmentoflarge-scaleintegratedcircuits. SCMapplicationissteadilydeepening,asithasstrongfunction,smallsize,lowpowerdissipation,lowprices,reliable,easytousefeatures,itisparticularlysuitedtoandcontrolofthesystem,increasinglywidelyusedinautomaticcontrol,intelligentinstruments,gauges,dataacquisition,militaryproductsandhouseholdappliances,andotherareas,isoftenmicrocontrollerasacorecomponenttouse,Inlightofspecifichardwarearchitecture,andapplication-specificsoftwarefeaturesobjectcombinetomakeperfect.

Inthispaper,basedonsingle-chipdigitalclockdesign,discussedindetailfromthesoftwarerealizetheprocess,focusingontheclockadjustintheway:

queriesanddisruptionofcomparison,then,onthedigitalclockmadeofthestabilityandaccuracyrelateddiscussion.Inthelastarticle,

Keywords:

MCU,digitalclock,databuffer,interruption,timing,

目录

引言6

第一章单片机的相关知识7

1.1PROTEUS软件简介7

1.2单片机简介7

1.3单片机的发展史7

1.4AT89C51单片机介绍8

1.4.2单片机的基本结构9

1.4.3单片机的选择9

第二章硬件电路设计9

2.1电子钟系统硬件组成9

2.2电子钟硬件电路工作说明10

2.3Proteus进行电子钟系统仿真10

第三章软件设计11

3.1程序流程图设计11

3.2keilc51进行程序调试12

3.3基于AT89S51单片机数字时钟的参考电路12

第四章结束语13

第五章致谢13

参考文献13

附录单片机程序14

引言

近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此越来越广泛地应用各个领域.

本文的电子钟系统是以单片机(AT89C51)为核心,时钟芯片DS1302、数码管显示驱动芯片MAX7219等元器件组成。

具体介绍应用Proteus的ISIS软件进行单片机系统的电子钟设计与仿真的实现方法。

该方法既能准确验证所设计的系统是否满足技术要求,又能提高系统设计的效率和质量,降低开发成本,具有推广价值。

随着半导体技术的飞速发展,以及移动通信、网络技术、多媒体技术在嵌入式系统设计中的应用,单片机从4位、8位、16位到32位,其发展历程一直受到广大电子爱好者的极大关注。

单片机功能越来越强大,价格却不断下降的优势无疑成为嵌入式系统方案设计的首选,同时单片机应用领域的扩大也使得更多人加入到基于单片机系统的开发行列中,推动着单片机技术的创新进步。

然而传统的单片机系统开发除了需要购置诸如仿真器、编程器、示波器等价格不菲的电子设备外,开发过程也较繁琐。

单片机系统作为一种典型的嵌入式系统,其系统设计包括硬件电路设计和软件编程设计两个方面,其调试过程一般分为软件调试、硬件测试、系统调试3个过程。

如果采用单片机系统的虚拟仿真软件——Proteus,则不用制作具体的电路板也能够完成以上工作。

第一章单片机的相关知识

1.1PROTEUS软件简介

PROTEUS软件由Labcenter公司开发,是目前世界上最先进、最完整的嵌入式系统设计与仿真平台,可以实现数字电路、模拟电路及微控制器系统与外设的混合电路系统的电路仿真、软件仿真、系统协同仿真和PCB设计等功能,是目前唯一能够对各种处理器进行实时仿真、调试与测试的EDA工具。

微控制器系统相关的仿真需建立编译和调试环境,可选择KeilC51uVision2软件。

该软件支持众多不同公司的芯片,集编辑、编译和程序仿真等于一体,同时还支持PLM、汇编和C语言的程序设计。

它的界面友好易学,在调试程序、软件仿真方面有很强大的功能。

其革命性的功能是:

将电路仿真和微处理器仿真进行协同,直接在基于原理图的虚拟原型上进行处理器编程调试,并进行功能验证,通过动态器件如电机、LED、LCD、开关等,实时看到运行后的输入、输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,Proteus为我们建立了完备的电子设计开发环境。

1.2单片机简介

单片微型计算机简称单片机,是典型的嵌入式微控制器常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。

单片机由芯片内仅有CPU的专用处理器发展而来。

最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。

INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。

1.3单片机的发展史

1.3.14位单片机

4位单片机的主要应用领域有:

PC机的输入装置,电池充电器,运动器材,带液晶显示的音/视频产品控制器,一般家用电器的控制及遥控器,电子玩具,钟表,计算器,多功能电话等。

1.3.28位单片机

8位单片机由于功能强,被广泛用于自动化装置、智能仪器仪表、智能接口、过程控制、通信、家用电器等各个领域。

1.3.316位单片机

16位单片机主要用于工业控制,智能仪器仪表,便携式设备等场合。

1.3.432位单片机

随着高新技术智能机器人,光盘驱动器,激光打印机,图像与数据实时处理,复杂实时控制,网络服务器等领域的应用与发展推出32位单片机

1.3.564位单片机

64位单片机在引擎控制,智能机器人,磁盘控制,语音图像通信。

1.4AT89C51单片机介绍

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除100次。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1.4.1管脚说明

VCC:

供电电压。

GND:

接地。

RST:

复位输入。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

P3口也可作为AT89C51的一些特殊功能口

ALE/PROG:

地址锁存允许的输出电平用于锁存地址的地位字节。

/PSEN:

外部程序存储器的选通信号。

/EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

1.4.2单片机的基本结构

MCS-51单片机内部结构8052单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。

1.4.3单片机的选择

单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。

单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:

中央处理器、存储器和I/O接口电路等。

因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

单片机经过1、2、3、3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展。

第二章硬件电路设计

2.1电子钟系统硬件组成

MAX72电子钟系统硬件主要由AT89C51单片机、时钟芯片DS1302、数码管码显示驱动芯19等元器件组成。

电子钟系统硬件电路组成框图

2.2电子钟硬件电路工作说明

系统硬件电路根据课题设计要求,它由以下几个部件组成:

单片机89C52RC、电源、时分秒显示模块。

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

显示模块中时分秒显示驱动、校时模块都通过89C52RC的I/O口控制。

显示模块中的复位电路由89C52RC的RESET端控制。

电源部分:

电源部分有二部分组成。

一部分是由220V的市电通过变压、整流稳压来得到+5V电压,维持系统的正常工作;另一部分是由5V的电池供电,以保证停电时正常走时。

正常情况下电池是不提供电能的,以保证电池的寿命。

2.3Proteus进行电子钟系统仿真

在ProteusISIS的Debug菜单中选择Execute,运行程序,系统仿真结果如下图所示。

实现功能:

当进入调整功能时,按第一个键K1进行减运算,按第二个键K2进行加运算。

按下第三个键K3,实现日期\时间调整及\定时功能,等数字闪烁后,按一二键进行加减,从而可以进行具体日期时间调整。

当定时设定后,到预定时间后,系统通过C51音乐程序演唱歌曲-八月桂花。

按下第四个键K4,可以进行时间\日期切换,8位LED数码管将显示时间或日期,采用24小时制。

时间显示格式为:

时-分-秒;日期显示格式为:

日-月-年。

有实时显示当前计算机系统时间和日期的功能。

第三章软件设计

3.1程序流程图设计

按键处理是先检测秒按键是否按下,秒按键如果按下,秒就加1;如果没有按下,就检测分按键是否按下,分按键如果按下,分就加1;如果没有按下,就检测时按键是否按下,时按键如果按下,时就加1;如果没有按下,就把时间显示出来。

开始

秒按键按

秒加1

分按

键按

分加1

时按

键按

时加1

显示

时间

结束

定时器中断时是先检测1秒是否到,1秒如果到,秒单元就加1;如果没到,就检测1分钟是否到,1分钟如果到,分单元就加1;如果没到,就检测1小时是否到,1小时如果到,时单元就加1,如果没到,就显示时间。

开始

一秒时间

秒单元加1

60秒时间

秒单元清零

分单元加1

60分钟

分单元清零

时单元加1

24

小时

时单

元清

时间显示

 

中断返回

时间显示是先秒个位计算显示,然后是秒十位计算显示,再是分个位计算显示,再然后是分十位显示,再就是时个位计算显示,最后是时十位显示。

开始

秒个位计算显示

秒十位计算显示

分个位计算显示

分十位计算显示

时个位计算显示

时十位计算显示

结束

3.2keilc51进行程序调试

3.3基于AT89S51单片机数字时钟的参考电路

第四章结束语

本文的电子钟系统是以单片机(AT89C51)为核心,时钟芯片DS1302、数码管显示驱动芯片MAX7219等元器件组成。

具体介绍应用ProtelDXP进行电路原理图设计,KeilC51软件调试程序以及Proteus的ISIS软件进行单片机系统的电子钟设计与仿真。

实现了硬件软化的目的。

我在这一次数字电子钟的设计过程中,很是受益匪浅。

通过对自己在大学三年时间里所学的知识的回顾,并充分发挥对所学知识的理解和对毕业设计的思考及书面表达能力,最终完成了。

这为自己今后进一步深化学习,积累了一定宝贵的经验。

撰写论文的过程也是专业知识的学习过程,它使我运用已有的专业基础知识,对其进行设计,分析和解决一个理论问题或实际问题,把知识转化为能力的实际训练。

培养了我运用所学知识解决实际问题的能力。

我们的学习不但要立足于书本,以解决理论和实际教学中的实际问题为目的,还要以实践相结合,理论问题即实践课题,解决问题即课程研究,学生自己就是一个专家,通过自己的手来解决问题比用脑子解决问题更加深刻。

学习就应该采取理论与实践结合的方式,理论的问题,也就是实践性的课题。

这种做法既有助于完成理论知识的巩固,又有助于带动实践,解决实际问题,加强我们的动手能力和解决问题的能力。

第五章致谢

参考文献

[1]代启化.基于Proteus的电路设计与仿真[J].现代电子技术2006第19期.

[2]曹洪奎;马莹莹基于Proteus单片机系统设计与仿真[J].辽宁工学院学报[3]蔡希彪,曹洪奎;单片机电子时钟系统的设计与仿真[J];中国科技信息;

[4]刘文秀.单片机应用系统仿真的研究[J].现代电子技术.2005,第286期

附录单片机程序

DATA_SEGSEGMENTDATA;定义一个DATA段

STACKSEGMENTIDATA;定义一个堆栈段

BIT_SEGSEGMENTBIT;定义一个位段

bKeyBITP1.0;

IdleConstEQU50

RSEGSTACK

DS10H;16个字节的堆栈

RSEGDATA_SEG;开始DATA_SEG段

buffer:

DS6;6个字节的显示缓冲区

ms50:

DS1;50ms计数

ms250:

DS1;250ms计数

sec:

DS1;秒

min:

DS1;分

hour:

DS1;时

ms50_1:

DS1;存放多少个50ms,用于记录按键时间

SetPos:

DS1;设置位置

SetPos1:

DS1;需要屏蔽的数码管

RSEGBIT_SEG

bIdle:

DBIT1;省电模式

bTwinkle:

DBIT1;当前设置位置闪烁

CSEGAT0;相当于小汇编的ORG

LJMPMAIN

CSEGAT000BH;定时器T0中断处理入口地址

LJMPINT_Timer0

CSEGAT001BH;定时器T1中断处理入口地址

LJMPINT_Timer1

MOVP0,A

SetFunTab:

AJMPNoSet;不需要调整

AJMPSetHour;调整小时

AJMPSetMin;调整分钟

AJMPSetSec;调整秒钟

NoSet:

CLRbTwinkle

RET;不在设置状态

SetHour:

INChour

MOVA,hour

CJNEA,#24,SetHour1

MOVhour,#0

SetHour1:

SJMPSetFun1

SetMin:

INCmin

MOVA,min

CJNEA,#60,SetMin1

MOVmin,#0

SetMin1:

SJMPSetFun1

SetSec:

INCsec

MOVA,sec

CJNEA,#60,SetFun1

MOVsec,#0

SetFun1:

SETBF0

RET

;调整闪烁位置

SetPosTab:

AJMPNoSetPos

AJMPSetHourPos

AJMPSetMinPos

AJMPSetSecPos

NoSetPos:

MOVSetPos1,#0

RET

INCA

RLA

MOVDPTR,#SetPosTab

JMP@A+DPTR

Key2:

SETBbIdle;进入省电模式

MOVP2,#0FFH

Key3:

RET

Key4:

JNBTR1,Key5

MOVA,ms50_1

CJNEA,#IdleConst,$+3

JNCKey2

RET

Key5:

ACALLDisplay

ACALLDisplay

ACALLDisplay

ACALLDisplay

JNBbKey,Key6

SJMPKey3

Key6:

CLRbIdle

MOVTH1,#60

MOVTL1,#176

SETBTR1

MOVms50_1,#0

RETEND

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

当前位置:首页 > 高中教育 > 语文

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

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