基于ds12c887的实时时钟日历设计课程设计(论文)(编辑修改稿)内容摘要:

LM7805CV 供电电路 红外遥控器 电路 本设计采用红外遥控器控制电子钟,红外接收头 与单片机的 口相连,红外遥控器的 功能 有: 选择键、数值增大键、数 值 减小键和闹铃查看键。 在 时间调节 中,可 按功能选择键 ,配合 数值增大 、 减小 功能键 可 分别对日期 和 时间进行 调节。 在 调节 过程中,显示器 光标会在 对应调节项目 上游走 ,分别是: “秒、分、时、星期、日、月、年”。 在闹铃设置中,可按闹铃查看键,配合数值增大、减小功能键可对闹铃时间进行设置。 图 29 红外遥控器电路 桂林电子科技大学课程设计(论文)报告用纸 第 12 页 共 36 页 闹铃电路 随着闹铃时间的设定,当实时时间到达闹钟的时间时, DS12C887 的 SQW 管脚 会输出一组方波,如图 210 所示 ,当 SQW 输出一个高电平时,使三极管导通,喇叭会发出蜂鸣声; 当 SQW 输出为低电平时,三极管不导通喇叭不发声。 所以,整个闹钟输出为一组滴滴声。 闹铃电路如图 211 所示。 图 210 蜂鸣器驱动方波 图 211 蜂鸣器电路 温湿度传感器 DHT11 电路 DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的桂林电子科技大学课程设计(论文)报告用纸 第 13 页 共 36 页 长期稳定性。 传感器包括一个电阻式感湿元件和一个 NTC 测温元件,并与一个高性能 8位单片机相连接。 因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。 每个 DHT11 传感器都在极为精确的湿度校验室中进行校准。 校准系数以程序的形式存在 OTP 内存中,传感器内部在检测型号的处理过程中要调用这些校准系数。 单线制串行接口,使系统集成 变得简易快捷。 超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最佳选择。 产品为 4 针单排引脚封装,连接方便。 DHT11 电路如图 212 所示。 图 212 DHT11 电路 3 系统 软件 程序 设计 在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。 因此,软件设计在微机控制系统设计中占重要地位。 在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。 数据处理包括:数据的采集、数字滤波等。 过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制实现想要的结果。 为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。 所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。 模块程序设计法的主要优点是:单个模块比起一个完整的程序易编写及调试;模块可以共存,一个模块可以被多个任务在不同条件下调用;模块程序允许设计者分 割任务和利用已有程序,为设计者提供方便。 本系统软件采用模块化结构, 主要 由主程序﹑ DS12C887 子程序、 Nokia5110 子程序 、红外遥控器 控制子程序 、 DHT11 子程序、蜂鸣器子程序等 构成。 桂林电子科技大学课程设计(论文)报告用纸 第 14 页 共 36 页 主程序 运行 说明及流程图 在这个设计中, STC89C52 主要功能是存储程序、根据程序的内容对各个端口进行判断并做出相应的处理; DS12C887 主要的功能是控制年、月、日、 星期、 时、分、秒的 变化及存储,以便让单片机读取 ; DHT11 的主要功能是测量周围环境的温湿度;Nokia5110 液晶 主要的功能是将 时间 和温湿度的 内容 显示出来。 主程序主要实现了从 DS12C887 和 DHT11 读出数据并送到 Nokia5110 液晶 中显示的功能,同时检测 红外遥控器 有没有按键按下,如果有键被按下,则执行按键处理子程序。 首先进行 DS12C887 时钟芯片和 Nokia5110 液晶屏 的初始化函数,然后进行按键扫描,不断地检测按键是否按下,读取 DS12C887 时钟芯片 和 DHT11 的数据,并且送到液晶显示器显示;当数据发生变化时候,重新进行扫描写入。 主程序流程图如图 31 所示。 图 31 主程序流程图 桂林电子科技大学课程设计(论文)报告用纸 第 15 页 共 36 页 DS12C887 使用 说明及流程图 进入主程序后, DS12C887 首先进行初始化设置,若并 行口有数据,最后则调用函数从日历时钟芯片获取日历时钟信息,调用显示函数显示日历时钟信息显示出来,重复进行。 这部分包括 对 DS12C887 某个单元写、读 DS12C887 某个单元的内容和 对DS12C887 设定时间。 12C887 的流程图如图 32 所示。 图 32 DS12C887 操作 流程图 Nokia5110 液晶 操作 说明及流程图 显示主要是通过从芯片中读入程序,分别对秒、分、时、 星期、 日、月、年进行显示,并且通过键盘的操作,对时间进行加减操作,使时间更新显示。 进 入 主 函 数 后 , 执 行 完 Nokia5110 液 晶 屏 的 初 始 化 函 数 , 然 后 用LCD_write_english_string( )函数,先显示固定的内容。 最后是读出 DS12C887 和 DHT11的数据送到固定的位置显示。 Nokia5110 的写命令操作和 写 数据操作分别用两个独立的函数来完成,函数内部唯一的区别就是液晶数据命令选择端的电平。 Nokia5110 的流程图如图 33 所示。 开始 DS12C887 初始化 调用函数获取时钟信息 送数据显示 桂林电子科技大学课程设计(论文)报告用纸 第 16 页 共 36 页 图 33 Nokia5110 操作 流程图 红外遥控器 控制 说明 如果需要修改时间,则先输入你想要修改的数字,比如你想要修改时间的“分”,“分”此时显示为 11,你想修改为 20,则输入 20,然后按下红外遥控器的“分”功能键,则你想要修改的数据成功修改为 20。 以此类推,年、月、日、时、分、秒、闹钟 的调节原理相同。 DHT11 温湿度传感器 说明 主程序中调用 读取 DHT11 数据的函数,然后送入 Nokia5110 液晶屏的相应位置显示即可。 4 系统调试 系统调试共分为两大部分:一个是软件 调试 ,另一个是硬件 调试。 其中软件 调试 通过 Keil uVision4 实现; 硬件调试主要是检测硬件电路是否有短路、断路、虚焊等。 由于本系统线路连接比较简单,加之本人焊接技术过硬,故本系统硬件调试一次通过,没有硬件故障。 难度主要在软件调试上。 本人原先的构思是 闹铃采用播放音乐的形式,但发现闹铃音乐播放时,液晶上不能开始 Nokia5110 初始化 读取 DS12C887 并 显示 读取 DHT11 并 显示 结束 桂林电子科技大学课程设计(论文)报告用纸 第 17 页 共 36 页 实时显示时间,即处于时间停滞状态。 经分析主函数程序执行过程后,得出闹铃采用播放音乐的方案不能实现。 因为单片机至多每隔一秒就要从 DS12C887 中读取时间并送液晶显示,这样才能保证液晶上 的 时间是一秒一秒跳动的。 也就是 说 单片机要执行别的任务 (闹铃)必须要 在一秒的 时间 间隙内完成 ,否则时间就无法实时显示。 而一首音乐的播放时间不可能少 于一秒,故闹铃声音只能采用一连串的短“滴”。 设计 调试 完成后,给系统上电, Nokia5110 液晶显示屏显示结果如图 41 所示 : 图 41 Nokia5110 液晶屏显示结果 5 结论 本设计硬件电路较简单,所用器件较少,电路中使用了 STC89C52单片机、 DS12C887时钟芯片、 Nokia5110 液晶显示器 、 DHT11 温湿度传感器 等主要器件 ,实现计时、校时和闹铃 和温湿度显示 功能。 在对芯片的管脚功能和用法有充分的了解后,根据设计要求设计硬件电路,包括单片机控制电路、时钟电路、 显示电路 、 供电 电路、 红外遥控 电路 、温湿度传感器电路 和闹铃电路。 然后通过软件编程,实 现了对年、月、日、时、分、秒、星期、闰年和阴历的自动调整,用红外遥控器 进行控制,用液晶模块进行显示,并具有闹铃功能。 实时日历电子钟可以正常显示时间并进行时间调整 ,还能显示周围环境的温湿度 ,基本完成了预期要实现的目标。 桂林电子科技大学课程设计(论文)报告用纸 第 18 页 共 36 页 谢 辞 首先,在这里感谢学校给我们安排这次 课程设计 ,使我有一个可以自己动手 学习 的机会。 通过动手 实践 , 我学习到了很多课本以外的知识, 体会 到了 自己 亲自 动手 做 出 成果的 喜悦。 其 次,在这要感谢我们 可敬可爱 的 王键 老师, 虽然老师工作繁忙,但还是会时常 关注 学生的课设进展 ,并给出很多宝贵的点拨,帮助我们解决了很多技术上难题。 可以说,没有老师的悉心指导,就不会有我今天的作品。 最后,我还要 感谢这次课程设计中给我帮助的同学,是你们的帮助,我才 能 顺利的完成课程设计任务。 谢谢你们的帮助。 桂林电子科技大学课程设计(论文)报告用纸 第 19 页 共 36 页 参考文献 [1] 郭天祥 《 新概念 51单片机 C语言教程 》 北京:电子工业出版社, 2020 [2] 吴金戌 《 8051 单片机实践与应用 》 北京:清华 大学出版社 , 2020 [3] 楼然苗 《 MCS- 51 系列单片机设计实例 》 北京:北京航天航空大学出版社, 2020 [4] 刘华东 《 电子 CAD 技术 — Protel 电路设计 》 北京:清华大学出版社, 2020 [5] 谭浩强 《 C 语言程序设计 》 北京:清华大学出版社, 1999 桂林电子科技大学课程设计(论文)报告用纸 第 20 页 共 36 页 附录 A:实时日历电子钟设计电路原理图 图一 : 实时日历电子钟原理图 桂林电子科技大学课程设计(论文)报告用纸 第 21 页 共 36 页 附录 B:实时日历电子钟实物图 图二 : 实时日历电子钟整体实物图 图三 : 实时日历电子钟主板 桂林电子科技大学课程设计(论文)报告用纸 第 22 页 共 36 页 图四:实时日历时钟电子钟 主板 背面 图五 : 实时日历时钟红外遥控器 桂林电子科技大学课程设计(论文)报告用纸 第 23 页 共 36 页 图六 : 实时日历电子钟 锂聚合物电池 桂林电子科技大学课程设计(论文)报告用纸 第 24 页 共 36 页 附录 C: 主 程序清单 /**************************************主程序 *******************************************/ include include include uchar year, month, date, hour, minute, second, day。 uchar a_hour, a_minute, a_second。 //红外数据处理变量 bit year_f, month_f, date_f, hour_f, minute_f, second_f, day_f, a_hour_f, a_minute_f, a_second_f。 uchar number = 0。 uchar change, change_shiwei = 0, change_gewei = 0。 //要修改的数据 bit shiwei_gewei_f = 0。 //判断输入的数据是十位还是个。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。