基于单片机的万年历的设计

2026/1/27 14:56:13

本科生课程设计(论文)

第1章 绪论

从古至今,人们的日常生活和工作都离不开对时间的准确把握。而随着科技的发展,电子万年历成为了日渐流行的日常计时工具。目前市场上的万年历功能强大,简单直观,给人们带来很大的方便。

机械式钟表虽然也可以告知人们时间,也可以定时,显示日历。但是由于受到机械结构、动力和体积的限制,在功能、性能以及造价上都没办法与电子时钟相比。电子钟是采用电子电路实现对时、分、秒进行数字显示的计时装置,广泛应用于个人家庭,室外广场,汽车站和火车站等公共场所,成为人们日常生活中不可少的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、0按时自动打铃、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,更为先进的电子钟的研究有着良好的发展前景和市场潜力由于数字集成电路技术的发展和采用了先进的石英技术,现代电子钟具有走时准确、性能稳定、制作维修简单等优点,弥补了传统钟表的许多不足之处。我们利用单片机技术设计制作的电子万年历,可以很方便的由编程进行功能的调整和改进,使其在能够准确显示公历和农历年、月、日、时间、星期的同时,还能具有很多其他的功能。如设定闹钟、语音报时、二十四节气的显示等,有一定的新颖性和实用性,同时体积小、携带方便,使用也更为方便,具有技术更新周期短、成本低、开放灵活等优点,具备一定的市场前景。这里要介绍的就是一款可满足使用者特殊要求,输出方式灵活、计时准确、性能稳定、维护方便的实用电子万年历 。

电子万年历在家庭居室、学校、车站和广场使用越来越广泛,给人们的生活、学习、工作带来极大的方便。针对以往的电子万年历断电后需要重新调整时间与日期,且计时误差大的现象。本设计采用AT89C51作为主控制器,为了提高电路的实用性加入温度测量电路。

本系统程序有主程序、中断服务函数和多个子函数构成。主函数只要完成各子函数和中断函数的初始化。定时中断函数主要完成时钟芯片的定式扫描及键盘扫描。时钟芯片的读写函数只要是将时间、日历信息读出来,并把要修改具体值写入时钟芯片内部。

1

本科生课程设计(论文)

第2章 课程设计的方案

2.1 概述

本系统以AT89C51单片机为核心,结合DS3231时钟芯片及DS18B20温度采集芯片等外围器件,实现了万年历的显示公历和农历年、月、日、时、分、秒和星期,还可以准确的显示当前的室温的功能,并通过液晶屏和按键控制完成人机交互功能。本系统具有体积小,读取方便,显示只直观,电路简单明了,成本低廉等诸多优点。

2.2 系统组成总体结构

万年历系统由AT89C51作为控制中心,用LCD19264作为显示模块,用DS3231作为时钟模块,用DS18B20作为温度模块,系统组成结构图如图。

DS3231 AT89C51

图1.2系统组成结构图

LCD 液晶显示 按键电路 DS18B20 驱动电路 2

本科生课程设计(论文)

第3章 硬件设计

3.1单片机及单片机最小系统设计

单片机是一种集成芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能集成到一块硅片上构成的小而完善的微型计算机系统,在工业控制领域广泛应用。

本文应用的是89C51单片机,89C51单片机具有如下等特性,面向控制的8位CPU,一个片内振荡器和时钟产生电路,震荡频率为0~24MHz,片内4KB的片内数据存储器,128B的片内数据存储器,可寻址64KB的片外程序存储器和片外数据存储器控制电路,2个16位I/O口,共32条可单独编程的I/O口现,5个中断源,2个中断优先级,1个全双工的异步串行口,21个特殊功能寄存器,具有节电工作方式,即休闲方式和掉电保护方式。89C51单片机有40个引脚。其中2条主电源引脚,2条外接晶体引脚,4条控制或与其他电源复用的引脚,32条I/O口引脚。VSS(20脚):接地端。VCC(40脚):电源端。正常操作及对Flash ROM的编程和验证时接+5V电源。XTAL1(19):J接外部晶体和微调电容的一端。

在89C51片内,它是震荡电路反向放大器的输入端及内部时钟发生器的输入端,振荡电路的频率就是晶体的固有频率。当采用外部震荡器时,此引脚输入外部时钟脉冲。XTAL2(18脚):接外部晶体和微调电容的另一端。在89C51片内,它是震荡电路反向放大器的输出端。采用外部震荡器时,此引脚应悬浮。RST(9脚):复位信号输入端,高电平有效。当振荡器工作时,在此引脚上出现两个周期以上的高电平,就可以使单片机复位。ALE(30脚):地址锁存允许信号。当89C51上电正常工作后,ALE端不断向外输出正脉冲信号,此信号频率为振荡器的1/6.通过用示波器查看ALE端是否有脉冲信号输出,可以确认89C51芯片的好坏。89C51在并行扩展外部存储器时,P0口用于分时传送低8位地址和数据信号,当ALE信号有效时,P0口传送低8位地址信号;ALE信号无效时,P0口传送的是8位数据信号。在ALE信号的下降沿,锁定P0口传送的低8位地址信号,可以实现低8位地址与数据的分离。

晶振并不能独立的使用,必须配合合适的负载电容,否则会产生频率偏差,或者是使晶振不能工作。负载电容的选择可以根据单片机的技术文档上的说明来选择。对于51单片机一般选择不大于40pf的瓷片电容。

3

本科生课程设计(论文)

复位电路,就是利用它把电路恢复到起始状态。就像计算器的清零按钮的作用一样,以便回到原始状态,重新进行计算。和计算器清零按钮有所不同的是,复位电路启动的手段有所不同。一是在给电路通电时马上进行复位操作;二是在必要时可以由手动操作;三是根据程序或者电路运行的需要自动地进行。复位电路都是比较简单的大都是只有电阻和电容组合就可以办到了。再复杂点就有三极管等等配合程序来进行了。为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V±5%,即4.75~5.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才会撤除,微机电路开始正常工作。

复位引脚当有连续两个以上机器周期(2us以上)的高电平,这个单片机就会复位。而我们的电路设计是,电容充电瞬间,电流通过电容器,然后向电阻方向放电,此时,电容的“-”端就能有一个很高的电势,在高于3V的情况下,均可以认为是高电平。

单片机里虽然集成了很多电路,但仍然不能独立运行,必须要外连一些电路,才能使单片机运行起来。这种能使单片机工作的最简电路,我们叫做单片机最小系统。本设计最小系统由复位电路,晶振电路和单片机组成。

在提及单片机的最小系统后,现对单片机的另一重要应用系统即中断系统做一个比较详细的介绍。在CPU 与外设交换信息时,存在着一个快速CPU与慢速的外设之间的矛盾。为解决这个问题,发展了中断的概念。单片机在某一时刻只能处理一个任务,当多个任务同时要求单片机处理时,这一要求应该怎么实现呢?通过中断可以实现多个任务的资源共享。所谓的中断就是,当CPU正在处理某项事务的时候,如果外界或者内部发生了紧急事件,要求CPU暂停正在处理工作而去处理这个紧急事件,待处理完后,再回到原来中断的地方,继续执行原来被中断的程序,这个过程称作中断。从中断的定义我们可以看到中断应具备中断源、中断响应、中断返回这样三个要素。中断源发出中断请求,单片机对中断请求进行响应,当中断响应完成后应进行中断返回,返回被中断的地方继续执行原来被中断的程序。MCS-51单片机的中断源共有两类,它们分别是:外部中断和内部中断。外部中断0(INT0)来自P3.2引脚,通过外部中断0触发方式控制位IT0(TCON.0),来决定中断输入信号是低电平有效还是负跳变有效。一旦输入信号有效,便使IE0标志置一,向CPU申请中断;外部中断1(INT1)来自P3.3引脚,通过外部中断1触发方式控制位IT1(TCON.2),来决定中断输入信号是低电平有效还是负跳变有效。一旦输入信号有效,便使IE0标志置一,向CPU申请中断。内部中断有三个:TF0,TF1,RI或TI。TF0(TCON.5),片内定时/计数器T0溢出中断请求标志。当定时/计数器T0

4


基于单片机的万年历的设计.doc 将本文的Word文档下载到电脑
搜索更多关于: 基于单片机的万年历的设计 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219