万年历设计论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2014年全省技工教育和职业培训
优秀教研成果评选活动参评论文
(论文题目使用2号宋体字加粗)
作者姓名:
单位:(所在单位全称)
联系电话:(可随时联系)
邮箱:
摘要:
随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术, 本文主要介绍了一个基于ATS56单片机的万年历系统,详细描述了利用单片机万年历进行时间显示(包括:年、月、日、星期、分、秒)、温度、闹钟、节日提醒的过程,重点对万年历在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现所具有的各项功能,并可根据需要任意设定各按钮的功能,它使用起来相当方便,具有精度高、及时性、灵敏度高、体积小、功耗低等优点,适合于我们日常生活、工作和学习,也可以当作显示器器嵌入其它系统中,作为其他主系统的辅助扩展。该系统结构简单,经济适用,有广泛的应用前景。
关键词:
51单片机、ds1302时钟芯片、ds18b20温度传感器、12864液晶显示屏、38k固定红外接受
一、设计内容及性能指标
本设计方案主要是介绍了AT单片机控制下的万年历系统,详细介绍了其硬件和软件设计,并对其各功能模块做了详细介绍,其主要功能和指标如下:
1.本系统通过1302在12864液晶显示屏显示时间(包括年、月、日、星期、分、秒);
2.本系统通过12864液晶显示屏显示当地的温度;
3.本系统设有闹钟
系统方案扩展
1.通过12864显示了节日、一天的各个时间段
2.本系统还有生日提醒,当生日到了时,会报时提醒
3.还有备忘录功能,本程序以一首诗来显示备忘功能
4.闹钟响时,可以采用红外远距离关闭闹钟,方便人们的生活
二.系统原理
原理图
1.单片机
采用现在比较通用的 51 系列单片机。51 系列单片机的发展已经有比较长的时间,应用比较广泛,各种技术都比较成熟,此系列单片机是 8 位机,处理速度不是很快,但对于我们做这个万年历已经绰绰有余了。51支持C语言,应用也比较简单。
2.时钟芯片
DS1302 是 DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和 31 字节静态 RAM 通过简单的串行接口与单片机进行通信,实时时钟/日历电路提供秒分、时、日、日期、月、年的信息,每月的天数和闰年的天数可自动调整时钟操作可通过 AM/PM 指示决定采用 24 或 12 小时格式 DS1302 与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线 1 RES 复位 2 I/O 数据线 3 SCLK串行时钟时钟/RAM 的读/写数据以一个字节或多达 31 个字节的字符组方式通信 DS1302 工作时功耗很低保持数据和时钟信息时功率小于 1mW。
时序图:
3、DS18B20
Ds18B20数字温度计提供9-12位摄氏温度测量而且有一个有高低电平触发的可编程的不因电源消失而改变的报警功能,DS18B20通过一个单线接口发送或接受信息,因此在中央处理器和DS18B20之间仅需一条线连接,它的测温范围为-55~+125℃,并且在-10~+85℃精度为±5℃。除此之外,DS18B20能直接从单
通信线上汲取能量,除去了对外部电源的需求。S1820通过门开通期间内低温度系数振荡器经历的时钟周期个数计数来测量温度。而门开通期由高温度系数振荡器决定。计数器予置对应于-55℃的基数,如果在门开通期结束前计数器达到零,那么温度寄存器它也被予置到-55℃的数值--将增量。指示温度高于-55℃。
同时计数器用斜率累加器电路所决定的值进行予置。为了对遵循抛物线规律的振荡器温度特性进行补偿,这种电路是必需的,时钟再次使计数器计值至它达到零,如果门开通时间仍未结束那么此过程再次重复。
斜率累加器用于补偿振荡器温度特性的非线性,以产生高分辩率的温度测量,通过改变温度每升高一度,计数器必须经历的计数个数来实行补偿,因此,为了获得所需的分辩率,计数器的数值以及在给定温度处每一摄氏度的计数个数(斜率累加器的值)二者都必须知道。
此计算在DS1820内部完成以提供0.5℃的分辩率。温度读数以16位、符号扩展的二进制补码读数形式提供。表1说明输出数据对测量温度的关系数据在单线接口上串行发送 DS1820可以以0.5℃的增量值,在0.5℃至+125℃的范围内测量温度,对于应用华氏温度的场合必须使用查找表或变换系数
注意:在DS1820中,温度是以1/2℃ LSB (最低有效位)形式表示时,产生以下9位格式
最高有效(符号)位被复制到存储器内两字节的温度寄存器中较高MSB的所有位,这种符号扩展产生了如表1所示的16位温度读数。
以下的过程可以获得较高的分辩率,首先,读温度,并从读得的值截去0.5℃位(最低有效位)这个值便是TEMP_READ 然后可以读留在计数器内的值 ,此值是门开通期停止之后计数剩余所需的最后一个数值是在该温度处每一摄氏度的计数个数(COUNT_PER_C)。于是,用户可以使用下式计算实际温度
表1 温度/数据关系
表2 DS1820命令集
注:
1.温度变换需要 2 秒钟。在接收到温度变换命令之后,如果器件未从 VDD 引脚取得电源那DS1820 的 I/O 引线必须至少保持2秒的高电平以提供变换过程所需的电源这样在温度变换命令发出之后至少在此期间内单线总线上不允许发生任何其他的动作。
2.在接收到复制暂存存储器的命令以后如果器件没有从 VDD 引脚取得电
源,那么 DS1820 的 I/O引脚必须至少维持 10ms 的高电平,以便提供复制过程中所需的电源,这样在复制暂存存储器命令发出之后至少在这一期间之内单线总线上不允许发生任何其他的动作,此命令写至 DS1820 的暂存存储器以地址2 开始接着写的两个字节将被保存在暂存存储器地址 2 和3 之间中发出一个复位便可在任何处终止写操作。
4、LCD12864
12864液晶显示模块是128×64点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置国标GB2312码简体中文字库(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。可与CPU直接接口,提供两种界面来连接微处理机:8-位并行及串行两种连接方式。具有多种功能:光标显示、画面移位、睡眠模式等。
逻辑工作电压(VDD):4.5~5.5V
电源地(GND):0V
LCD驱动电压(V0):0~-10V
工作温度(Ta):0~55℃(常温) / -20~70℃(宽温)
12864的MCU接口:
12864硬件特性如下:
提供8位,4位并行接口及串行接口可选
并行接口适配M6800时序
自动电源启动复位功能
内部自建振荡源
64×16位字符显示RAM(DDRAM最多16字符×4行,LCD显示范围16×2行)
2M位中文字型ROM(CGROM),总共提供8192个中文字型(16×16点阵)
16K位半宽字型ROM(HCGROM),总共提供126个西文字型(16×8点阵)
64×16位字符产生RAM(CGRAM)