51单片机驱动的液晶万年历设计:DS1302与LCD1602应用

版权申诉
0 下载量 196 浏览量 更新于2024-06-15 收藏 2.48MB PDF 举报
随着科技的飞速发展,电子万年历作为日常生活中的必备小工具,其简洁易用的特性使其在众多领域得到了广泛的应用。本论文主要探讨了基于51单片机的液晶显示万年历设计,着重于硬件与软件的结合,以提供精确的时间和实用的信息。 硬件部分的核心是STC89C51单片机,由宏晶科技生产,它以其低功耗、宽电压范围(3.4v~5.5v)的优势,成为了众多嵌入式系统的选择。这款单片机作为整个系统的控制核心,能够有效处理数据并驱动外围设备。DS1302是美国Dallas公司推出的一款低功耗实时时钟芯片,它具备高度的准确性和稳定性,可以提供年、月、日、星期、小时、分钟和秒的计时功能,对于实现精确的时间显示至关重要。 在硬件连接上,1602LCD液晶显示屏被用于数字显示,它能够清晰地展示年份、月份、日期、星期、时间和温度等信息,提供了良好的用户界面。设计中,还涉及到温度传感器DS18B20的数据采集,这款传感器可以实时监测环境温度,并将数据传输到单片机进行处理,增加了设备的实用性和智能化。 在软件方面,设计包括日历程序、时间调整程序以及显示程序的编写。所有的程序在Keil软件中进行调试,确保无误后,才将其烧录到单片机中进行实际测试。设计重点在于探究如何通过DS1302时钟芯片、DS18B20温度传感器与LCD1602液晶显示屏之间的硬件连接和通信,以及不同连接方案的优劣对比。 关键词:51单片机、DS1302时钟芯片、DS18B20温度传感器、LCD1602液晶显示屏,这些技术元素的巧妙融合使得本文的万年历设计不仅具备基本的功能,还具备了高效能和良好的用户体验。通过这个项目,学习者可以深入了解单片机的编程与应用、传感器与微控制器的协同工作,以及液晶显示技术的实际运用,这对于初学者来说是一次宝贵的实践和理论提升的机会。
2023-02-27 上传
单片机课程实训 SCM PRACTICAL TRAINING "实训设计题目 "   万年历的设计    " "Title Of Training "     " " 分院(系别) "             " "Department " " "专  业 " "班 级 "     " "Speciality " "Class " " "设计作者 " "完成日期 " " "Author " "Date " " "组 别 "    "指导教师 " " "Team "  "Advisor "   " 目 录 第一部分 课程设计任务书 1 一、课程设计题目 1 二、课程设计时间 1 三、实训提交方式 1 四、设计要求 1 第二部分 课程设计报告 2 一、单片机发展概况 2 二、MCS-51单片机系统简介 2 三、设计思想 3 四、硬件电路设计 3 1. 总体设计 3 2. 晶振电路 4 3. 复位电路 4 4. DS1302时钟电路 5 5. 温度采集系统电路 5 6. 按键调整电路 6 7. 闹钟提示电路 6 五、软件设计框图 7 六、程序源代码 8 1. 主程序 8 2. 温度控制程序 11 3. 日历设置程序 13 4. 时钟控制程序 18 5. 显示设置程序 20 七、结束语 23 八、课程设计小组分工 24 九、参考文献 24 第一部分 课程设计任务书 一、课程设计题目 用中小规模集成芯片设计制作万年历。 二、课程设计时间 五天 三、实训提交方式 提交实训设计报告电子版与纸质版 四、设计要求 (1)显示年、月、日、时、分、秒和星期,并有相应的农历显示。 (2)可通过键盘自动调整时间。 (3)具有闹钟功能。 (4)能够显示环境温度,误差小于±1 (5)计时精度:月误差小于20秒。 第二部分 课程设计报告 一、单片机发展概况 单片机诞生于20世纪70年代末,它的发展史大致可分为三个阶段: 第一阶段(1976-1978):初级单片机微处理阶段。该时期的单片机具有 8 位CPU,并行 I/O 端口、8 位时序同步计数器,寻址范围 4KB,但是没有串行口。 第二阶段(1978-1982):高性能单片机微机处理阶段,该时期的单片机具有I/O 串行端口,有多级中断处理系统,15 位时序同步技术器,RAM、ROM 容量加大,寻址范围可达 64KB。 第三阶段(1982-至今)位单片机微处理改良型及 16 位单片机微处理阶段民用电子产品、计算机系统中的部件控制器、智能仪器仪表、工业 测控、网络与通信的职能接口、军工领域、办公自动化、集散控制系统、并行多机处理 系统和局域网络系统。 二、MCS-51单片机系统简介 MCS-51系列单片机产品都是以Intel公司最早的典型产品8051为核心构成的。MCS- 51单片机由CPU 、RAM 、ROM 、I/O接口、定时器/计数器、中断系统、内部总线等部件组成。8051单片机的基本性能 有: 8位CPU; 布尔代数处理器,具有位寻址能力; 128B内部RAM,21个专用寄存器; 4KB内部掩膜ROM; 2个16位可编程二进制加1定时器/计数器; 32个(4×8位)双向可独立寻址的I/O口; 1个全双工UART(异步串行通信口); 5个中断源,两级中断结构 ; 片内振荡器及时钟电路 ,晶振频率为1.2MHz~12MHz; 外部程序/数据存储器寻址空间均为64KB; 111条指令,大部分为单字节指令; 单一+5V电源供电,双列直插40引脚DIP封装。 三、设计思想 整体设计以单片机技术为核心,采用C语言进行软件设计,增加了程序的可读性和可移植 性,为了便于扩展和更改,软件的设计采用模块化结构。程序先向LCD更新时钟芯片的时 间与温度传感器的时间,然后进行初始化工作。程序由一个主函数,两个定时器中断程 序,一个时钟设置子程序,一个农历设置子程序,一个温度设置子程序,一个延时子程 序,一个调时子程序,一个显示子程序构成。程序通过按键扫描程序来确定是否调用中 断程序来对时间进行调整。用一子程序完成时分的调整,通过循环扫描四个按键的电平 变化来判断对应按键是否按下,并带有去抖动功能,四个按键分别有增加,减小,退出 与功能选择的作用。通过功能选择时钟设置与闹钟设置,使用加或减按键进行预置,完 成后可点退出键完成操作。 可分为以下几个功能模块: 1)主程序:定时器中断初始化、时钟与温度更新程序与键盘监控。 2)计时:为定时器中断服务子程序,完成刷新计时缓冲区的功能。 3)农历:由阴历换算对照表得出阳历并显示。 4)闹钟:采用定时器中断方式实现闹钟与整点报时。 5) 温度:由温度传感器将温度传送到LCD显示。 6)设置:由按键设置闹钟时间或时钟时间。 7)键盘扫描:判断是否有键按下,并确定键号。 8)LCD显示:完成8