基于单片机的带温度显示的数字钟设计【毕业论文】.doc

上传人:文初 文档编号:79125 上传时间:2018-06-28 格式:DOC 页数:58 大小:6.23MB
下载 相关 举报
基于单片机的带温度显示的数字钟设计【毕业论文】.doc_第1页
第1页 / 共58页
基于单片机的带温度显示的数字钟设计【毕业论文】.doc_第2页
第2页 / 共58页
基于单片机的带温度显示的数字钟设计【毕业论文】.doc_第3页
第3页 / 共58页
基于单片机的带温度显示的数字钟设计【毕业论文】.doc_第4页
第4页 / 共58页
基于单片机的带温度显示的数字钟设计【毕业论文】.doc_第5页
第5页 / 共58页
点击查看更多>>
资源描述

1、 本科 毕业 论文 (设计 ) (二零 届) 基于单片机的带温度显示的数字钟设计( c51语言编程) 所在学院 专业班级 电气工程及其自动化 学生姓名 学号 指导教师 职称 完成日期 年 月 - 1 - 摘 要 本设计以单片机为智能控制系统的 CPU,设计一个带实时温度显示的数字钟,该产品是将时钟、日历、和温度 计集成在一起的多功能的一个日用工具。该设计有单片机微处理系统、温度检测与转换、键盘和数码管显示、时钟模块以及复位电路组成。将硬件电路设计完成后,用 C51 语言编程,再利用 Keil 软件进行编译,制作了带有实时温度显示的数字钟。该数字钟能够实现的功能有年、月、日,时、分、秒的显示,切

2、换显示实时环境温度,自动处理闰年、并能利用键盘设定时间的初始值以及各功能之间的切换显示。 为了能实现以上所述的功能,本设计是选用 AT89C51单片机作为智能控制系统的 CPU。在显示方面选用的芯片为 HD7279A,为了提高系统的抗干扰性 本设计采用的温度传感器是 DS18B20,因为 DS18B20 支持 “ 一线总线 ” 接口,测量温度范围为 -55C 到 +125C ,被测温度用符号扩展的 16 位数字量方式串行输出,在-10C 到 85C 范围内,精度为 0.5C 。 DS18B20 采集到的现场温度直接以先进的单总线数据通信方式传输,大大提高了系统的抗干扰性,适合于恶劣环境的现场温

3、度测量。 本设计的最小计时单位为秒,虽然只需要四位按键就能实现上述的功能,但是为了以后能更进一步对产品进行扩展,在此选用了 16位的键盘 1。 关键词: AT89C51单片机; C51语言编程; DS18B20;数字钟;日历 - 2 - Abstract The design use a microcontroller for intelligent systems CPU, the design of a digital clock with real-time temperature display . The product is a integrated daily tool with

4、 the clock, calendar, and thermometer multi-function displays. The design of microcontrollers microprocessor system, temperature check and conversion, keyboard and digital display, clock module, and reset circuit. After the hardware circuit design use C51 programming language, using Keil software co

5、mpile, made real-time temperature display with digital clock. The digital clock can be achieved for many years, months, days, hours, minutes, seconds display, switch display environment temperature real-time, automatic deal a leap year, and can use the keyboard to set the time of the initial value,

6、and switch between various functions . In order to achieve the functions described above, This design was chosen for the AT89C51 microcontrollers CPU as an intelligent control system, In the display area selected HD7279a, to improve the immunity system of temperature sensors used DS18B20 in this des

7、ign , because DS18B20 support “bus- line“ interface, measurement temperature range of -55 C +125 C, the measured temperature 16-bit with sign extension mode digital serial output, At -10 +85 C ,accuracy is 0.5 C. DS18B20 collected site temperature directly use advanced single-bus data communication

8、transmission, greatly improve the system immunity, Adverse circumstances of the site can be used to measurement temperature in Adverse circumstances. The design of the minimum time in seconds ,although only four function keys will be able to achieve all features, but in order to expand the product f

9、urther, Now use the 16 keyboard . Key Words: AT89C51 microcontroller; C51 programming language; DS18B20; Digital Clock; Calendar - 3 - 目 录 1 引言 .1 2 总体设计 .2 3 硬件设计 .3 3.1 微处理器系统 .3 3.1.1 时钟电路 .3 3.1.2 复位电路 .4 3.2 键盘和显示模块 .5 3.2.1 键盘 .5 3.2.2 LED显示 .6 3.3 温度检测模块 .8 3.3.1 温度采集 .8 3.3.2 温度测量 .8 4 软件设计

10、. 11 4.1 总体程序流程图 . 11 4.1.1 软件系统整体框架 . 11 4.1.2 系统主程序流程 .12 4.2 时钟程序 .13 4.3键盘与显示程序 .16 4.3.1 HD7279A显示程序 .16 4.3.2键盘扫描程序 .17 4.3.3 键盘切换功能程序 .17 4.4温度显示程序流程 .18 4.4.1 温度检测与显示主程 序 .18 4.4.2 温度测量程序 .19 4.4.3 温度转换程序 .20 4.5 星期的算法 .21 5 测试报告 .24 5.1 测试时间显示 .24 5.2 测试星期显示 .24 5.3 测试温度 .24 5.4 测试初始值的设定 .2

11、5 5.5 测试闰年 .25 6 结论 .26 致 谢 . 错误 !未定义书签。 参考文献 .27 附录 1 系统实物图 .28 - 4 - 附录 2 实验原理图 .30 附录 3 毕业设计作品说明书 .31 附录 4 源程序清单 .32 - 1 - 1 引言 随着人 们 生活水平的提高,对物质的多功能性需求也越来越高, 人们已不再满足于钟表简单的报时 功能,希望出现一些新的功能,如环境温度显示、日历的显示、重要日期倒计时、显示跑表功能等。要实现这些功能,都是以数字化的电子时钟为基础 ,不 仅应用了数字 电 路 技 术 ,而且还加入了模 拟电 路技 术 和 单 片机技 术 。其 电 路可以由

12、时钟 模块 、人机接口模 块 、 环 境 温度 检测 模 块 等部分 组 成。比机械式 时钟 具有更高的直 观 性和准确性,调节起来方便,因为没有机械装置,所以能够使用更长时间,方便维护保养,因此使用相当的广泛 。数字钟 它已成为人们日常生活中必不可少的物品,大量用于个人家庭以及车站、码头、剧院、办公室等公共场所,给人们的生活、学习、工作、 带来极大的方便。因此,研究实用数字钟及其扩展应用,具有很大的实用价值 2 。 单片机具有体积小、功能强、 低功耗 、可靠性高、价格低廉等一系列优点,不仅已成为工业测控领域 、智能仪表 、 机电一体化 、 实时控制 、 国防工业 普遍采用的智能化控制工具,而

13、且已渗入到人们工作和和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。 C语言已经成为当前举世公认的高效简洁,而又贴近硬件的编程语言之一。将 C语言向单片机 8051上移植十余 20世纪 80年代的中后期,经过几十年的努力, C语言已成为专业化单片机上的实 用高级语言。 C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能 。 此外, C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。 与汇编语言相比, C51在功能 、结构、可读性、可维护性上有明显的优势,因而易学易用。另外 C51可以缩短开发周期

14、,降低成本,可靠性,可移植性好。 因此,使用 C语言进行程序设计已成为软件开发的一个主流 , 用 C语言进行 8051单片机程序设计是单片机开发与应用的必然趋势。 - 2 - 2 总体设计 应用单片机结合开发板设计制作一个带温度显示的数 字钟,用 C51 语言进行编程。 系统具体要求: ( 1) 8 位数码显示。 ( 2) 16 键的键盘。 ( 3)可以测定并显示环境温度。 ( 4)时钟显示精确到秒。 ( 5)可以显示年月日。 ( 6)可以键盘设定时间的初始值。 ( 7)可以自动处理闰年。 本设计的最小记时单元为一个定时器周期即 50毫秒,所以中断 20次就相当于一秒。从而实现了基本的数字钟的

15、计时功能。 用 HD7979A 作为显示驱动芯片,该芯片可连接多达 64键的键盘矩阵,单片就能够完成本设计所需的 LED 显示和键盘接口的所有功能。然而实际用到的只有 4 位,但是为了能够扩展产 品,本设计设置了 16 位键 。 根据温度检测与显示的需要,温度传感器选用 DS18B20,该传感器具有以下特点:它 支持 “ 一线总线 ” 接口, 信息经过单线接口送入 DSl8B20或从 DSl8B20送出,因此 CPU 只需一根端口线就能与 DS18B20 进行通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。并且 不需要外部电源,读、写和完成温度变换所需的电源可以由数据线本身提供。测量

16、范围从 -55至 +125,增量值为 0.5。由于实际的显示温度增量值为0.1,所以检测到的温度跟显示的温度还是有一定的误差 1。 作为数字钟达到上述功能还是不够完善的,由单片机的功能以及本设计所用到的硬件,该设计还加入了星期与日历的显示。 - 3 - 3 硬件设计 本系统硬件主要有以下模块组成:微处理器系统、复位电路、键盘模块、时钟模块、显示模块、温度检测与转换模块。系统结构图如图 3-1: 图 3-1 系统结构图 3.1 微处理器系统 AT89C51有美国 ATMEL公司生产 是一种 片内含 4k bytes闪存可编程可擦除 只读存储器 ( FPEROM Flash Programmabl

17、e and Erasable Read Only Memory)的低电压、高性能 CMOS 8位微处理器,俗称 单片机 。 AT89C2051是一种带 2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除 1000次。采用 ATMEL高密度非易失存储器制造技术制造, 并且能 兼容工业标准的 MCS-51指令集和输出管脚。 片内置通用 8位中央处理器( CPU)和 Flash存储单元 , ATMEL的 AT89C51是一种高效微控制器。 AT89C51单片机为很多 嵌入式控制系统 提供了一种灵活性高且价廉的方案 ,功能强大的 AT89C51单片机可提供许多高性价比的应

18、用场合,可灵活应用于各种控制领域 3。 3.1.1 时钟电路 单片机的时钟产生方法有两种,分别是内部时钟方式和外部时钟方式,本设计采用单片机的内部时钟方式。 AT89C51芯片内部有一个高增益反向放大器, TXAL1 TXAL2 引脚分别为该反数码管显示模块 A T 8 9 C 5 1 单 片 机 时钟模块 温度检测与转换模块 电源 键盘模块 复位电路 - 4 - 向放大器的输入端与输出端,在芯片的外部通过这两个引脚接石英晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器,单片机时钟电路如图 3-2所示: 图 3-2 单片机时钟电路图 3.1.2 复位电路 复位是单片机的初始化操

19、作,其主要的作用是把 PC 初始化为 0000H,使单片机从0000H 单元开始执行程序。 AT89C51 单片机复位电路有片内、片外;两部分组成。复位操作有两种方式:上电复位和上电按钮复位。应为系统运行等的需要,常常需要人工按钮复位,所以此处选择上电按钮复位,其电路图如 3-3所示: 图 3-3 单片机按键复位电路 其基本单片机电路如图 3-4 所示: - 5 - 图 3-4 基本单片机电路 3.2 键盘和显示模块 3.2.1 键盘 键盘是单片机应用系统中最常用的输入设备,在 单片机应用系统中,操作员一般都是通过键盘向单片机系统输入指令、地址和数据,实现简单的人机通信。 读键盘指 令的前一个字节 00010101B 为微控制器传送到 HD7279A 的指令, HD7279A返回的按键代码为后一个字节 dO-d7,范围是 O-3FH(无键按下时为 OXFF),此指令的前半段,为了接受来自微处理器的指令, HD7279A 的 DATA 引脚处于高阻输入状态;在

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。