电子万年历课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
烟台南山学院单片机课程设计题目电子万年历
姓名:
所在学院:烟台南山学院
所学专业:自动化
班级:
学号:
指导教师:
完成时间:
摘要
单片机作为当今领域应用广泛的电子器件,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。以AT89C51芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由5V直流电源供电,通过数码管能够准确显示时间,日期,调整时间,日期,从而到达学习、设计、开发软、硬件的能力。
时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DS1302,DS12887,X1203等都可以满足高精度的要求。本设计由单片机AT89C51芯片和LED数码管为核心,运用DS1302时钟芯片,辅以必要的电路,构成了一个单片机电子时钟。
1 绪论 (1)
2 总体方案设计与论证 (2)
2.1数字时钟方案 (2)
2.2显示方案 (3)
3 硬件系统的方案设计 (4)
3.1 系统框图 (4)
3.2 单片机的选择 (4)
3.3 时钟电路DS1302 (7)
3.4 时钟电路及复位电路 (9)
3.5 驱动电路 (9)
3.6 显示电路 (10)
3.7 按键接口 (11)
4 软件系统设计 (12)
4.1 时间信息获取程序 (12)
4.2 显示程序 (12)
5 系统调试 (13)
5.1 系统调试 (13)
5.2 时钟显示 (13)
5.3 DS1302的调试 (13)
5.4 按键电路调试 (13)
6 总结 (14)
参考文献 (15)
附录:系统程序 (16)
现代数字万年历是根据单片机制作而成的计时工具,是人们日常生活中必不可少的必需品,广泛用于个人家庭以及车站、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。但随着时间的推移,科学技术的不断发展,生活节奏越来越快,竞争日益激烈,人们对时间计量的精度要求越来越高,应用越来越广。可以说时间的准确已成为各行业安全运行的基础,如果时间出现误差而不能及时校正,会造成一系列严重的后果和经济损失。设计一种时钟校时系统显得尤为重要,而且此系统还可以随意的定时报时,及时提醒下一步要发生的事情或要完成的事情,给人们的生活、学习和工作带来更多的方便。高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟、石英表、石英钟都采用了石英技术,因此走时精度高、稳定性好、使用方便、不需要经常调校。数字式电子钟用集成电路计时,译码器电路代替机械式传动,用LED 显示器代替指针显示时间,减小了计时误差,这种时钟具有时、分、秒显示时间的功能,还可以进行时、分、秒的校对,片选的灵活性好。专门的时钟芯片还可以提供高精度的准确时间,本设计采用的时钟芯片是DS1302。
该电子时钟主要采用AT89C51单片机作为主控核心,由DS1302时钟芯片提供时钟、LED动态扫描显示屏显示。AT89C51单片机是由Atmel公司推出的,功耗小,电压可选用4~6V电压供电;DS1302时钟芯片是美国DALLAS公司推出的具有涓细电流充电功能的低功耗实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小;数字显示是采用的LED显示屏来显示,可以同时显示年、月、日、星期、时、分、秒和温度等信息。此外,该电子时钟还具有时间校准等功能。
2 总体方案设计与论证
2.1数字时钟方案
数字时钟是本设计的最主要的部分。根据需要,可利用两种方案实现。
方案一采用专用时钟芯片DS1302
该芯片是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。
图1 DS1302外部引脚图
各引脚的功能为:
Vcc1:备用电源;Vcc2:主电源。当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2< Vcc1时,由Vcc1向DS1302供电。
SCLK:串行时钟,输入;
I/O:三线接口时的双向数据线;
CE:输入信号,在读、写数据期间,必须为高。该引脚有两个功能:第一,CE开始控制字访问移位寄存器的控制逻辑;其次,CE提供结束单字节或多字节数据传输的方法。
DS1302有关日历、时间的寄存器共有12个,其中有7个寄存器(读时81h~8Dh,写时80h~8Ch),存放的数据格式为BCD码形式。
方案二完全用软件实现数字时钟
原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将十字节清零。该方案具有硬件电路简单的特点。但由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。而且,由于是软件实现,当单片机不上电,程序不执行时,时钟将不工作。
基于硬件电路的考虑,本设计采用方案一完成数字时钟的功能。