单片机的万年历立体闹钟设计
目录
一、 引言 1
(一) 万年历控制系统的发展背景 1
(二) 万年历控制系统的国内外发展现状 1
(三) 本文主要研究内容 2
二、 方案选择及元器件介绍 3
(一) 系统主控核心的选取 3
(二) STC89C51单片机 4
(三) DS1302实时时钟芯片 4
(四) 温度传感器简介 6
(五) LCD1602液晶显示器介绍 7
三、 硬件系统设计 8
(一) 万年历系统的硬件结构框图设计 8
(二) 最小系统设计 8
1. 时钟电路设计 9
2. 复位电路设计 9
(三) DS1302实时时钟芯片电路的设计 10
(四) 温度传感器电路设计 10
(五) 液晶显示器电路设计 11
(六) 闹钟电路设计 12
(七) 按键电路 12
四、 软件系统设计 14
(一) 万年历系统的软件工作流程设计 14
(二) DS1302实时时钟芯片的驱动流程设计 15
(三) 温度传感器工作流程设计 16
1. 复位操作 16
2. 读数据操作 17
3. 写数据操作 17
(四) 液晶显示器工作流程设计 18
五、 实物制作与安装 20
总 结 22
参考文献 23
*51今日免费论文网|www.jxszl.com +Q: ^351916072*
致 谢 24
附录一 原理图 25
附录二 PCB图 26
附录三 元件列表 27
附录四 程序 28
引言
万年历控制系统的发展背景
本课题将要设计一款以单片机来作为中央处理器的万年历控制系统,这款系统与目前市面上绝大多数产品相比将具有更高的处理速度、更优秀的计时误差性能以及大幅度降低的功耗,下面对万年历系统的发展背景做简要介绍。万年历最早是以一种计时工具出现在人们的生活中的,古代中国农业发达,时间、气候以及温度的计量成为了辅助农业发展的一项重要工具,通过谚语或者纸质的日历等有形或者无形的时间日期参考方式,能够帮助古代人们很好的进行农业活动,随着社会的不断发展,当造纸技术不断发展发达后,纸质的日历或者台历出现在人们的生活中,这是万年历最早的雏形。随着时间的不断推移并且人们对于万年历所要实现的功能不断扩展,时间日期计量、温湿度检测、音乐播放等基本功能已经不能满足人们日益提高的生活标准,这些不断扩充的功能在单片机技术发展成熟后得到了实现,随着近几年来传感器技术发展成熟后实现了传感器体积不断缩小并且传感精度不断提升,以单片机等微处理器芯片作为核心芯片的电子万年历系统以各种外形外观涌现在市场上,几乎所有普通万年历甚至智能型万年历都采用这种微处理器架构来设计其内部硬件框架,其性能主要受微处理器以及传感器的影响,采用高端性能处理器如32位的ARM芯片是设计高端万年历的首选,本课题所要设计的这款万年历控制系统以单片机的强大处理功能作为核心技术,配合其他功能模块来实现课题预期制定的各项指标。
万年历控制系统的国内外发展现状
纵观近五年的电子万年历市场,可以得出一个明显的现象:中端层次的电子万年历市场几乎出现饱和状态,消费者对于中低端产品的需求不断下降,近几年来智能家居概念的不断深入人心带动了智能家居产品的发展,万年历作为家庭生活中重要的一个电器,实现与其它家用电器的相互兼容以及共同控制,实现家居的联网是电子万年历的主要发展前景,目前国内外性能最高的电子万年历内部处理器采用的是由英国ARM公司设计的CortexM3架构设计的,这款32位数据处理性能的架构使得这款万年历不但能够实现计时、室温测量等常见功能,更增添了语音和画质的处理。
本文主要研究内容
本文从多个角度对万年历控制系统进行了描述和展现,首先将这种系统的起源发展背景以及目前国内外企业、高校的研究成果现状进行了探讨和阐述,并分析研究了目前这种控制系统投入市场后所存在的普遍缺点;论文第二章紧接着对控制系统的总体结构框架进行了设计,选取了相应的元器件及模块,以便下文对软硬件系统进行设计;第三和第四两章着重对本次所设计的控制系统的硬件以及软件系统进行了设计,并对设计过程以及设计原理进行了详细描述,下列指标为本课题将要实现的功能:
1、能够实现时间日期的显示;
2、具有农历显示功能;
3、具有对室温的检测功能;
4、能够实现闹钟功能;
5、计时误差每24小时不得高于0.5秒;
6、采用+5V直流电压进行供电。
方案选择及元器件介绍
系统主控核心的选取
本章开始进行硬件相关元器件的选择以及特性描述,其中对于软硬件系统的主控核心是最重要的,因为这将决定最终是否能够实现最终的指标和功能,这主要体现在功能、性价比以及功耗等几个方面,因此本章首先对主控核心即单片机进行选择。
方案一:使用我非常熟悉的51单片机来作为本系统的主控核心,因为在敢接触单片机课程时就已经对STC89C51等51单片机有了很深的了解,并在在这两年的学习过程中,使用STC89C51单片机做过很多大大小小的项目和设计,可以说对于STC89C51单片机的使用已经达到一定程度的掌握,更重要的是设计过程中容易出现的问题,我能够迅速的解决,因此将这款单片机用在本系统中是正合适的,因为毕业设计的周期非常短,为了实现高性能的系统,必须要使用自己熟悉的控制器。然而不足的是,STC89C51单片机芯片里的资源相对Arduino Mega 2560来说,较为匮乏,没有AD和SPI等模块。所幸的是51单片机无论是在代码存储器大小还是定时器等,都能够良好的运用到本系统中。
方案二:选择我较为熟悉的Arduino Mega 2560单片机作为本系统的主控核心部分,由于之前在学习51过程中,触及到了一些关于Mega 2560的学习,感受到了Mega 2560单片机的高效性、多资源性以及艺术性,因此对于Mega 2560单片机有着较好的使用体验,所谓高效性指的是Mega 2560高速的数据处理速度以及常用资源都被囊括在了同一片内,因此在硬件设计过程中就无需在外部配置相关的硬件芯片,如AD模数转换器、DA模数转换器等常用器件;多资源性与高效性是一种因果关系,正是因为Mega 2560内部配置了很多常用的模块如AD、DA、IIC、SPI以及UART等模块,才使得用户能够在极短的时间内开发出自己所需要的产品;而艺术性指的是该系列单片机(Arduino)是由意大利一所艺术类团队设计出来的,之所以要设计这款单片机是为了解决他们在进行艺术设计过程中所面临的一些难题,因此他们在设计这款单片机时掺杂了很多艺术成分,如Mega 2560开发板的外观设计、开发环境IDE的界面人机感受等。然而如果将其运用在该系统所带来的难题主要是我目前对该单片机不是非常熟悉,如果遇到难题需要耗费很多的时间去解决。
原文链接:http://www.jxszl.com/dzxx/txgc/47107.html