电子时钟.ppt

上传人:wj 文档编号:18798435 上传时间:2023-11-20 格式:PPT 页数:31 大小:1.64MB
下载 相关 举报
电子时钟.ppt_第1页
第1页 / 共31页
电子时钟.ppt_第2页
第2页 / 共31页
电子时钟.ppt_第3页
第3页 / 共31页
电子时钟.ppt_第4页
第4页 / 共31页
电子时钟.ppt_第5页
第5页 / 共31页
电子时钟.ppt_第6页
第6页 / 共31页
电子时钟.ppt_第7页
第7页 / 共31页
电子时钟.ppt_第8页
第8页 / 共31页
电子时钟.ppt_第9页
第9页 / 共31页
电子时钟.ppt_第10页
第10页 / 共31页
电子时钟.ppt_第11页
第11页 / 共31页
电子时钟.ppt_第12页
第12页 / 共31页
电子时钟.ppt_第13页
第13页 / 共31页
电子时钟.ppt_第14页
第14页 / 共31页
电子时钟.ppt_第15页
第15页 / 共31页
电子时钟.ppt_第16页
第16页 / 共31页
电子时钟.ppt_第17页
第17页 / 共31页
电子时钟.ppt_第18页
第18页 / 共31页
电子时钟.ppt_第19页
第19页 / 共31页
电子时钟.ppt_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

电子时钟.ppt

《电子时钟.ppt》由会员分享,可在线阅读,更多相关《电子时钟.ppt(31页珍藏版)》请在冰点文库上搜索。

电子时钟.ppt

电子时钟,目录,一、课程设计概述二、方案的确定三、系统硬件设计四、系统软件设计五、系统调试过程六、总结七、遇到的问题及解决方法和结论八、附录,一、课程设计概述,利用单片机、时钟芯片DS1302、温度传感器DS18B20、1602液晶等实现日期、时间、温度的显示,即是一个简单的万年历。

具体的功能如下:

(1)通过DS1302能够准确的计时,时间可调并在液晶屏上显示出来。

(2)通过DS18B20能够实时、准确的检测当前环境温度,测量温度范围为-55+125,在-10+85C范围内,精度为0.5C。

(3)利用单片机自身功能实现闹钟。

二、方案的确定,本系统以AT89S51单片机为控制核心,通过与DS1302和DS18B20通信获取实时时间和实时环境温度,并将得到的数据通过1602液晶显示出来,同时通过相应的按键调整相应的值。

因此本设计可分为以下模块:

显示模块、实时时间计算模块、实时环境温度采集模块、报警模块、设置模块(时间设置模块、最高温度设置模块、闹钟设置模块)。

总体方案组成框图如下所示:

三、系统硬件设计,本设计主要用到AT89S51系列单片机,其端口应用如下表格:

LCD显示模块设计,1602液晶功耗较小可直接与单片机接口相接,电源直接与电源电路相接为+5V,对比度可调。

本设计使用单片机的P0口和P1口与1602进行通信。

另外1602有行显示,每行显示的字符数为16个,还提供各种控制命令,如:

清屏、字符闪烁、光标闪烁、显示移位等多种功能1602液晶与单片机接口电路:

时间计算模块设计,DS1302通过三根口线实现与单片机的通信,依靠2、3脚外接的晶振与其内部的电容配合来产生时钟脉冲的。

当外接晶振电路振荡时,DS1302计时正确;当外接晶振电路停振时,DS1302计时停止。

因此32.768kHz晶振是造成DS1302工作不稳定的主要因素。

因其功耗很小,当1脚的主电源超过8脚接的备用电源加0.2V时,由主电源对芯片供电;否则,有备用电源对芯片供电,所以即使电源掉电后通过3V的电池仍能维持芯片精确走时。

DS1302与单片机接口电路:

实时环境温度检测模块,DS18B20通过单总线实现与单片机的通信,系统中的数据交换,控制都由这根线完成。

单总线通常要求外接一个约为4.7K10K的上拉电阻,这样,当总线闲置时其状态为高电平。

在使用中DS18B20不需要任何外围元件,测温范围55+125,固有测温误差0.5。

DS18B20与单片机接口电路:

报警模块,在本设计中蜂鸣器直接接在单片机P3.6上。

报警模块采用单片机输出一定频率的方波从而使蜂鸣器发出声音。

设置模块,设置模块采用四个按键与P14、P15、P16、P17相接组成独立按键,接口电路如下;,电源接口部分,采用USB接口从电脑接到电源接口中,拨动开关可控制电路的接通,并用一个发光二极管作电源指示。

电源接口图如下所示:

四、系统软件设计,这个设计中,AT89S51主要功能是储存程序、根据程序的内容对各个端口进行判断并作出相应的处理;DS1302主要功能是控制年,月,日,时,分,秒的显示效果;LCD1602主要功能是将所要显示的显示出来;DS18B20主要功能是控制温度的显示效果。

整体框架,通电后,进入欢迎界面,前后延时2.8s,,后显示当前实时时间,若按下K1就进入调节状态,此时按下K1为设置时间状态,按下K2为设置最大温度报警状态,按K3为设置闹钟状态,按下K4为退出调节状态;若按下K2则是显示当前温度,一段时间后自动跳回显示当前实时时间,或先按K1等会在按K4即可退回到显示当前实时时间。

1602液晶屏,1602液晶屏是此设计的输出显示,有2行显示,每行16个字符,根据写入的位置而显示,当显示欢迎界面时是流动的,整个屏幕向右移动。

1602LCD流程图:

1602部分程序讲解:

A写指令:

Write_com(0x01);清屏Write_com(0x06);字符进入模式,屏幕不动,字符后移。

Write_com(0x0f);光标所在位置的Write_com(0x0e);显示光标B写指令Write_Address(0x纵横);液晶屏上的显示位置如下所示,主函数,主函数是程序功能总结显示的函数,其主要显示的是时间主要部分和当前实时时间,当进入设置完成后都会回到显示时间的状态。

主函数程序框图如下:

设置模块,设置模块分时间设置、最高温度报警设置、闹钟设置。

要先按K1才能进入设置模块,然后在按相应的按钮进行相应的设置。

设置模块流程图:

五、系统调试过程,系统调试共分为两大部分:

一个是软件仿真,另一个是硬件仿真。

其中软件仿真通过KeiluKision4实现;硬件部分现在Protel99se上设计出硬件电路图,画出PCB图;然后再制造出实物。

(1)硬件设计目标:

通过硬件中的液晶屏来显示:

实现Keil软件与ISIS软件结合实现仿真,把程序转化为虚拟的面板操作。

如果功能能够实现就可着手于硬件的焊接工作,硬件焊接完毕后,将程序烧写进硬件中实现其功能。

(2)软件设计目标:

运用proteus软件,实现硬件的面板控制转化为软件的虚拟电路控制,使得控制方便,条理清晰,对即将实现的功能进行模拟操作,有助于硬件功能的优化与实现。

仿真结果如下:

图a:

显示实时时间图b:

显示当前温度,图c:

当达到设置的最高温度图d:

当达到设置的闹钟时间,图e:

当进入调节状态图f:

当调节时间,图g:

当调节最高温度图h:

当调节闹钟,六、总结,脚踏实地,认真严谨是学习的态度,不怕困难、坚持不懈、吃苦耐劳的精神是我在这次设计中最大的收益。

我想这是一次意志的磨练,是对我实际能力的一次提升,也会对我未来的学习和工作有很大的帮助。

在这次设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识,所以在这里非常感谢帮助我的同学。

软件方面,由于对C语言程序的认知不深入,在修改程序时,出现了以下几点问题。

(1)欢迎界面的时间太长。

解决方案;修改欢迎界面的延时时间。

(2)温度显示错乱,并且在显示时高位自动补零。

解决方案:

温度在-16,-32,-48度时仍然会出现错误,比实际的温度高16度,其余温度值时正确,高位上的零也会自动影藏。

(3)秒钟调节时会自动转零。

解决方案:

把自动转零部分的程序改为秒钟调节功能。

(4)进入调节时间状态时字符闪烁以至于看不清楚调节的大小。

解决方案:

把1602的字符闪烁指令改为光标指令。

七、遇到的问题及解决方法,在硬件方面,画的PCB板焊盘不够大,又没有相应大小的砖针,而且在融板过程中出现了差错,最后导致PCB板不完美.解决方案:

最终决定自己用万能板焊接。

结论:

这次课程设计达到了预期的90%,有显示实时时间和实时温度,但是温度的显示不完全正确,在负数时有三个温度值显示错误,时间的设置逻辑比较啰嗦,没有做到简单化。

例外还加了欢迎界面、闹钟功能、最高温度报警功能。

遇到的问题及解决方法和结论,八、附录,1.仪器与设备清单,2.元器件清单,3.操作说明书,通电后,进入欢迎界面,前后延时2.8s,,后显示当前实时时间,若按下K1就进入调节状态,此时按下K1为设置时间状态,按下K2为设置最大温度报警状态,按K3为设置闹钟状态,按下K4为退出调节状态;若按下K2则是显示当前温度,一段时间后自动跳回显示当前实时时间,或先按K1等会在按K4即可退回到显示当前实时时间。

4.硬件原理图,5、软件原理图,6、PCB图,7、实物图,8、下载板,

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2