[最新版]基于AT89S51单片机的数字万年历毕业设计论文

2019-02-21 01:13

优秀论文 审核通过 未经允许 切勿外传

基于AT89S51单片机的数字万年历设计

摘要 ............................................................................................................................................................... 1

1 设计要求 ..................................................................................................................................................... 2 2 方案论证与设计 ......................................................................................................................................... 2

2.1 用可编程逻辑器件设计 ................................................................................................................. 2 2.1.1控制器部分 ................................................................................................................................ 3 2.2 显示部分的方案选择 ..................................................................................................................... 3 2.3 系统设计 ......................................................................................................................................... 3 2.3.1 晶体振荡器电路 ………………………………………………………………………………..3 2.3.2 分频器电路 ………………………………………………………………………………..3 2.3.3 时间计数器电路 …………………………………………………………………………..3 2.3.4 时钟电路 ……………………………………………………………………………………..4 2.3.5 复位电路 ……………………………………………………………………………………. 4 2.3.6复位电路的可靠性设计………………………………………………………………………...4 2.3.7 按键部分………………………………………………………………………………………..5 2.3.8蜂鸣器电路????????????????????????????????5 3.3.9 根据各模块的功能互相连接成电子万年历的控制电路……………………………………5 3各硬件介绍 .................................................................................................................................................. 6 3.1 AT89S51的引脚说明 ............................................................................................................................ 7 3.2 发光二极管指示电路设计?????????????????????????????8

3.3 蜂鸣器电路设计????????????????????????????8 3.3.1 蜂鸣器的介绍???????????????????????????..9 3.3.2 蜂鸣器的结构原理?????????????????????????..9 3.4 LCM1602简介…………………………………………………………………………9

3.5 DS1302 简介 ................................................................................................................................. 10

4 系统硬件设计所需的器材????????????????????????.11

5 系统软件总体设计 ................................................................................................................................... 11

6 系统功能介绍……………………………………………………………………………. 12

6.1 按键介绍 ....................................................................................................................................... 13 6.2星期计算 ......................................................................................................................................... 13 7 主程序流程图 ........................................................................................................................................... 14

8 安装制作 ??????????????????????????????.14 9 调试与检测安全 ???????????????????????????.14

10结束语 ...................................................................................................................................................... 15

前言

电子万年历是实现对年,月,日,时,分,秒数字显示的计时装置,广泛用于个人家庭,车站, 码头,办公室,银行大厅等场所,成为人们日常生活中的必需品。数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表。钟表的数字化给人们生产生活带来了极大的方便,在此基础上完成的万年历精度高,功能易于扩展。可扩展成为诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等电路。所有这些,都是以钟表数字化为基础的。因此,研究数字时钟及扩大其应用有着非常现实的意义。本设计就是数字时钟简单的扩展应用。

1 设计要求

本设计准备实现的功能:

(1) 显示公历日期功能(年、月、日、时、分、秒以及星期) (2) 可通过按键切换年、月、日及时、分、秒的显示状态 (3) 可随时调校年、月、日或时、分、秒 (4) 可每次增减一进行时间调节

(5) 可动态完整显示年份,实现真正的万年历显示 2 方案论证与设计 2.1控制器部分方案论证

方案一:可采用ALTERA公司的FLEX10K系列PLD器件。设计起来结构清晰,各个模块,从硬件上设计起来相对简单,控制与显示的模块间的连接也会比较方便。但是考虑到本设计的特点,EDA在功能扩展上比较受局限,而且EDA占用的资源也相对多一些。从成本上来讲,用可编程逻辑器件来设计也没有什么优势。

方案二:凌阳16位单片机有丰富的中断源和时基。它的准确度相当高,并且C语

言和汇编兼容的编程环境也很方便来实现一些递归调用。IO口功能也比较强大,方便使用。用凌阳16位单片机做控制器最有特色的就是它的可编程音频处理,可完成语音的录制播放和识别。这些都方便对设计进行扩展,使设计更加完善。成本也相对低一些。但是,在控制与显示的结合上有些复杂,显示模组资源相对有限,而且单片机的稳定性不是很高,而且就需要完成万年历这个不太复杂的设计可以不必用凌阳16位单片机来完成,采用51单片机既能够实现既定功能,成本也不高。综合考虑最后选择用51单片机来作为中心控制器件。

硬件控制电路主要用了AT89S51芯片处理器、LCD显示器等。根据各自芯片的功能互相连接成电子万年历的控制电路。软件控制程序主要有主控程序、电子万年历的时间控制程序、时间显示及星期显示程序等组成。主控程序中对整个程序进行控制,进行了初始化程序及计数器、还有键盘功能程序、以及显示程序等工作,时间控制程序是电子万年历中比较重要的部分。时间控制程序体现了年、月、日、时、分、秒及星期的计算方法。时间控制程序主要是定时器0计时中断程序每隔10ms中断一次当作一个计数,每中断一次则计数加1,当计数100次时,则表示1秒到了,秒变量加1,同理再判断是否1分钟到了,再判断是否1小时到了,再判断是否1天到了,再判断是否1月到了,再判断是否1年到了,若计数到了则相关变量清除0。先给出一般年份的每月天数。如果是闰年,第二个月天数不为28天,而是29天。再用公式s=v-1 +〔(y-14〕-〔(y-1100〕+〔(y-1400〕+ d计算当前显示日期是星期几,当调节日期时,星期自动的调整过来。闰年的判断规则为,如果该年份是4或100的整数倍或者是400的整数倍,则为闰年;否则为非闰年。在我们的这个设计中由于只涉及100年范围内,所以判断是否闰年就只需要用该年份除4来判断就行了。温度的显示主要是靠ds18b20采集现在的温度数据,CPU读取数据进行显示,当各自的条件得不到满足时,对应的显示器状态就不发生改变,只是在满足条件的情况下,显示器的状态才变化。

图1 单片机控制电路 Fig.1 SCM Control circuit

2.2 显示部分的方案论证

方案一:采用8段数码管虽经济实惠,但操作比液晶显示来说略显繁琐。 方案二:液晶显示方式。液晶显示效果出众,可以运用菜单项来方便操作,比较简单,所以,最后选择液晶显示方案。

图2 液晶显示电路 Fig.2 lcm1602 circuit

2.3 系统设计

2.3.1 晶体振荡器电路

晶体振荡器电路给数字钟提供一个频率稳定准确的32768Hz的方波信号,可保证数 字钟的走时准确及稳定。不管是指针式的电子钟还是数字显示的电子钟都使用了晶体 荡器电路。

图3 DS1302电路 Fig.3 ds1302 circuit

2.3.2 分频器电路

分频器电路将高频方波信号经分频后得到1Hz的方波信号供秒计数器进行计数,分频器实际上也就是计数器。 2.3.3 时间计数器电路

时间计数电路由秒个位和秒十位计数器,分个位和分十位计数器及时个位和时十位计数器电路构成,其中秒个位和秒十位计数器,分个位和分十位计数器为60进制计数器而根据设计要求,时个位和时十位计数器为12进制计数器。 2.3.4 时钟电路

内部时钟电路如图所示,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就产生自激振荡。定时元件通常石英晶体和电容组成的并联谐振回路,晶体振荡器选择12MHZ,电容采用30PF。

图4 时钟电路 Fig.4 Clock circuit 2.3.5 复位电路

影响单片机系统运行稳定性的因素可大体分为外因和内因两部分: (1)外因

射频干扰,它是以空间电磁场的形式传递在机器内部的导体(引线或零件引脚)感生出相应的干扰,可通过电磁屏蔽和合理的布线器件布局衰减该类干扰;

电源线或电源内部产生的干扰,它是通过电源线或电源内的部件耦合或直接传导,可通过电源滤波、隔离等措施来衰减该类干扰 。 (2)内因

振荡源的稳定性,主要由起振时间频率稳定度和占空比稳定度决定 起振时间可由电路参数整定稳定度受振荡器类型温度和电压等参数影响复位电路的可靠性。


[最新版]基于AT89S51单片机的数字万年历毕业设计论文.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:信息存储与检索实验作业

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

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