多功能数字温度计的设计与制作 车辆电子专业毕业设计 毕业论.doc_第1页
多功能数字温度计的设计与制作 车辆电子专业毕业设计 毕业论.doc_第2页
多功能数字温度计的设计与制作 车辆电子专业毕业设计 毕业论.doc_第3页
多功能数字温度计的设计与制作 车辆电子专业毕业设计 毕业论.doc_第4页
多功能数字温度计的设计与制作 车辆电子专业毕业设计 毕业论.doc_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文) 多功能数字温度计的设计与制作 专业(系)专业(系) 车车 辆辆 电电 子子 班班 级级 学生姓名学生姓名 指导老师指导老师 完成日期完成日期 2011.2011. 11.11. 1616 湖南铁道职业技术学院学生毕业设计(论文) 毕业设计任务书毕业设计任务书 一、 课题名称:多功能数字温度计的设计与制作 二、指导教师:章若冰 三、设计内容与要求 1 1 课题概述课题概述 1)温度是科学技术中最基本的物理量之一,物理、化学、生物等学科都离不开温度。在 工业生产和实验研究中,温度常常是表征对象和过程状态的最重要的参数之一。传统的 水银或酒精温度计来测量温度,不仅测量时间长、读数不方便、而且功能单一,已经不能 满足人们在数字化时代的要求。因此提出一种新型的数字式温度测量电路的设计方案,该 方案集成了基于 AT89S51 的两位数码管显示温度测量电路和通过编程的方式来实现实时 时钟的显示、修改、定时闹铃等功能的时钟电路 2 2 设计内容与要求设计内容与要求 设计内容: 1)温度测量:能够实时显示当前的环境温度 2)时钟功能:能够作为时钟使用,显示当前时间 3)闹钟功能:能够在设定时间时钟时,作为闹铃发生 4)时钟设置功能:能够设定时钟,修改当前时间 5)电源电池或直流稳压电源输入:稳压至 9V 供电 6)完成控制器的原理图和 PCB 板图的设计和制作 7)完成软件程序的编写与调试 8)对整机的调试,完成指定功能 设计要求: 1)原理图规范 2)PCB 板图规范、布局合理 3)电路板制作工整、美观 4)软件流程图标准 5)程序采用结构化设计、可读性强 3 3、设计参考书、设计参考书 湖南铁道职业技术学院学生毕业设计(论文) 电力电子技术与应用 高等教育出版社 电机控制技术 北京航空航天大学出版社 模拟电子技术 高等教育出版社 数字电子技术 高等教育出版社 单片机 C 语言程序设计北京航空航天大学出版社 单片机原理及应用 中南大学出版社 传感器与检测技术 高等教育出版社 4 4、设计说明书要求、设计说明书要求( (小四、宋体小四、宋体) ) (一)封面 (二)任务书 (三)中文摘要 (四)外文摘要 (五)目录 (六)正文 (绪论、正文主体、结论) (七)参考文献 (八)致谢 (九)附录 5 5、毕业设计进程安排、毕业设计进程安排 序序 号号 内容内容要求要求完成时间完成时间 1 师生见面,下发毕 业设计任务书、布 置毕业设计 -2011.6.28 2 前期准备 完成毕业设计相关资料 的收集、设计方案的确 定 假期 3 元件选型参数、型号、数量2011915 4 控制板原理图设计 - 2011930 5 控制板 PCB 板设计 与制作 -2011.10.14 6 软件程序编写调试 -2011.10.31 7 整机调试完成批定功能20111110 8 毕业设计任务书编 写 毕业设计说明书在规定 时间前上交指导教师处 2011.11.25 9 毕业答辩及成绩评 定 - 2011 年 12 月 湖南铁道职业技术学院学生毕业设计(论文) 6 6、毕业设计答辩及论文要求、毕业设计答辩及论文要求( (小四、宋体小四、宋体) ) 1 毕业设计答辩要求 答辩前三天,每个学生应按时将毕业设计说明书或毕业论文、专题报告等必要资料 交指导教师审阅,由指导教师写出审阅意见。 学生答辩时对自述部分应写出书面提纲,内容包括课题的任务、目的和意义,所采 用的原始资料或参考文献、设计的基本内容和主要方法、成果结论和评价。 答辩小组质询课题的关键问题,质询与课题密切相关的基本理论、知识、设计与计 算方法、实验方法、测试方法,鉴别学生独立工作能力、创新能力。 2 毕业设计论文要求 文字要求:说明书要求打印(除图纸外),不能手写。文字通顺,语言流畅,排版合理, 无错别字,不允许抄袭。 图纸要求:按工程制图标准制图,图面整洁,布局合理,线条粗细均匀,圆弧连接光 滑,尺寸标注规范,文字注释必须使用工程字书写。曲线图表要求:所有曲线、图表、 线路图、程序框图、示意图等不准用徒手画,必须按国家规定的标准或工程要求绘制。 湖南铁道职业技术学院学生毕业设计(论文) 引言引言 当今社会逐渐步入信息化时代,快节奏、高效率成为当今时代的主题。人们在日 常的工作和生活中对各种信息量的需求也在不断加大,为了满足人们的这种需求, 电子万年历应运而生。电子万年历整合了人们所需的日期、时间、气温、日程安 排等诸多常用信息,最大限度的方便了人们的信息获取,可以对工作和生活做出 有效的安排。 首先,电子万年历是一种应用非常广泛的日常计时工具,数字显示的日历时钟因 其一目了然的特点已经越来越流行,特别是适合在家庭居室、办公室、大厅、会 议室、车站和广场等使用,为人们提供实时信息。 其次,可以通过对电子万年历的研究进一步熟悉和掌握 51 单片机及其外围电路的 应用,加强自己的动手能力,把理论和实际操作联系起来,在实践中达到理论知 识的融会贯通,并进一步提高自身在电子技术方面的理论研究及实践能力。 湖南铁道职业技术学院学生毕业设计(论文) 摘 要 本课题设计了一种基于单片机控制的数字式多功能温度计.该温度计以52单片机为主 控器,通过温度传感器DS1620来检测温度,并通过六位共阴极LED数码管来进行数据的显 示,可以方便的实现温度采集和显示.同时可以根据需要设置上下限报警温度,当温度不 在设置范围内时可以报警.同时还具有时钟显示的功能,当需要进行时间显示的时候可以 进行快速切换显示.具有使用方便,精度高、量程宽、灵敏度高、体积小、功耗低等优点.适 用于我们日常生活和工、农业生产中的温度测量,也可以当做温度处理模块嵌入其它系 统中作为其他主系统的辅助扩展.DS1620与AT89S52结合实现最简温度检测系统,该系统 结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景. 关键词:关键词:单片机;温度检测;AT89S52;DS1620 湖南铁道职业技术学院学生毕业设计(论文) ABSTRACT This project is a digital multi-function thermometer based on MCU. This system can easily achieve temperature acquisition and display, This thermometer uses AT89S52 as microcontroller-based controller, detect temperature through the temperature sensor DS1620, and realize the temperature display by four common cathode LED and it can set upper and lower limits of temperature according to feed the need, when the temperature is not set range it will ring. It also has the function of the clock display. It can switch the display fast when it is need. It is easy to use, with high precision, wide range, high sensitivity, small size and low power consumption. It is suitable for our daily lives and industrial and agricultural production in the temperature measurement, temperature processing module can also be embedded as other systems, the main system as the other auxiliary expansion. DS1620 combined with the realization of the simplest AT89S51 temperature detection system, the system is simple, anti-interference ability, suitable for harsh environments spot temperature measurement, a wide range of applications. Keywords: MCU; Temperature Measurement; AT89S52; DS1620 湖南铁道职业技术学院学生毕业设计(论文) 目 录 毕业设计任务书 引言 摘 要I ABSTRACT.II 第 1 章 绪 论1 1.1 课题意义及发展前景 .1 1.2 多功能数字温度计设计的价值2 1.3 设计内容及性能指标 .2 第 2 章 系统方案论证3 2.1 总体设计与分析及设计目标.4 2.2 方案的选择与设计4 2.2.1 核心处理器的比较与选择.5 2.2.2 温度系统的比较与选择.5 2.2.3 数码管驱动与芯片的比较与选择 6 2.3 方案初步确定及硬件详细设计7 2.4 方案的拓展与最终确定及主控器件10 2.5 电源电路的设计.13 第 3 章 系统器件选择16 3.1 主控芯片介绍和系统总流程图.18 3.2.1 DS1620 简单介绍和性能特点 .18 3.2.2 DS1620 内部结构和测温原理 .19 3.2.3 DS1620 使用中的注意事项和控制方法 .19 3.2.4 功能模块流程图 .20 3.3 显示元件的选择.21 第 4 章 硬件各电路设计22 4.1 AT89S51 单片机最小系统电路23 4.2 按键输入电路24 4.3 显示电路 .25 4.4 测温电路 .26 4.5 控制电路 .27 4.6 报警电路 .28 4.7 整机电路及工作原理 .29 湖南铁道职业技术学院学生毕业设计(论文) 第 5 章 软件程序设计.30 5.1 系统总程序 31 第 6 章 系统调试.33 6.1 时间精度测试.38 第 7 章 操作指导书.41 7.1 操作技巧 .43 7.1.1 展示时刻和温度 44 7.1.2 设定北京时刻和提示铃.46 7.2 问题解答 .48 7.1.1 闹铃器件工作时叫个不停 50 7.1.2 系统显示不精准(与北京时间和实际温度不附) 51 7.1.3 四位码管有问题 52 第 8 章 总结与体会.53 参考文献 .55 致谢.56 附录 A:设计相关图和表57 湖南铁道职业技术学院学生毕业设计(论文) 1 第 1 章 绪 论 1.1 课题意义及发展前景 随着科技的不断发展,现代社会对各种信息参数的准确度和精确度的要求都有了几 何级的增长,而如何准确而又迅速的获得这些参数就需要受制于现代信息基础的发展水 平.在信息采集、信息传输和信息处理中,传感器属于信息技术的前沿尖端产品,尤其是 温度传感器技术,在我国各领域已经引用的非常广泛,可以说是渗透到社会的每一个领 域,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业 生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义. 测量温度的关键是温度传感器,温度传感器的发展经历了三个发展阶段: 传统的分立式温度传感器 模拟集成温度传感器 智能集成温度传感器. 计算机技术和自动测试技术(ATE)的结晶,特点是能输出温度数据及相关的温度控制 量,适配各种微控制器(MCU).社会的发展使人们对传感器的要求也越来越高,现在的温 度传感器正在基于单片机的基础上从模拟式向数字式,从集成化向智能化、网络化的方 向飞速发展,并朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感 器和网络传感器、研制单片测温系统等高科技的方向迅速发展,基于单片机的数字温度 计设计与传统的温度计相比,其具有读数方便,测温范围广,测温准确,输出温度采用 数字显示,主要用于对测温要求比较准确的场所,或科研实验室使用. 温度的检测与控制是工业生产过程中比较典型的应用之一,随着传感器在生产和生 活中的更加广泛的应用,利用新型单总线式数字温度传感器实现对温度的测试与控制得 到更快的开发.本设计为基于 DS1620 和 AT89S52 单片机的温度测量及控制系统的硬件结 构以及 C 语言程序设计,系统设计和布线简单,结构紧凑,体积小,重量轻,抗干扰能 力强,性价比高,扩展方便,在大型仓库,工厂,智能化建筑等领域的多点温度检测中 有广阔的应用前景. 湖南铁道职业技术学院学生毕业设计(论文) 2 1.2 多功能数字温度计设计的价值 此次的多功能数字温度计不同于以往的传统数字温度计,它明显改善了数字温度计的 性能,包括温度采集的速度和测量精度大幅度提高,测量温度的范围也得到了明显的提 高。多功能数字温度计还兼有时钟显示、闹铃和时钟设置功能,所以更加符合市场需求。 如果继续提高测量精度,可以直接作为工业测温仪器使用,由美国 DALLAS 半导体公司新 研制的 DS1620 型高分辨力智能温度传感器,能输出 13 位二进制数据,其分辨力高达 0.03125,测温精度为0.2。随着单片机、温度传感器和数码管显示驱动等技术的 不断发展,要实现更加高的精度、显示速率快的数字温度计将很快能够实现。 1.3 设计内容及性能指标 本设计主要是介绍了单片机控制下的温度检测系统,详细介绍了其硬件和软件设计, 并对其各功能模块做了详细介绍,其主要功能和指标如下: 1、温度测量:利用温度传感器(DS1620)测量某一点环境温度 2、测量范围为-5599 3、时钟功能:能够作为时钟使用显示当前时间 4、时钟设置功能:能够设定时钟修改当前时间 5、用数码管进行实际温度值显示和时间显示 6、闹钟功能:能够在设定时间时钟时作为闹铃发生 湖南铁道职业技术学院学生毕业设计(论文) 3 第 2 章 系统方案论证 2.1 总体设计分析 本课题设计的是以AT89S52单片机,DS1620温度传感器,MAX7219数码管驱动芯片 为核心,采用两个四位数码管显示,辅以必要电路,共同构成的一个具有多功能的数字 温度计。该系统能够准确的显示时间、调整时间、闹钟报时并能够对时钟所在的环境温 度进行测量显示。 主程序进行初始化,其他的程序选择模块式的方式。首先对每个模块进行调试, 当模块调试成功后,逐一的加入主程序中,最后完成整个软件部分的设计。 2.2 方案的选择与设计 2.2.1 核心处理器的比较与选择 方案一:采用FPGA控制 FPGA是一种高密度的可编程逻辑器件,自从Xilinx公司1985年推出第一片FPGA以来, FPGA的集成密度和性能提高很快,其集成密度最高达500万门/片以上,系统性能可达 200MHz。由于FPGA器件集成度高,方便易用,开发和上市周期短,在数字设计和电子生产中 得到迅速普及和应用,并一度在高密度的可编程逻辑器件领域中独占鳌头。 但是而基于 SRAM编程的FPGA,其编程信息需存放在外部存储器上 ,需外部存储器芯片 , 且使用方法复杂 ,保密性差,而其对于一个简单的多功能数字温度计而言,实用FPGA有 点大材小用,成本太高。 湖南铁道职业技术学院学生毕业设计(论文) 4 方案二:采用ATMEL公司的AT89S52单片机 AT89S52是一种低功耗、高性能的片内含有4KB快闪可编程擦除只读存储器 (FPEROM-Flash Programmable and Erasable Read Only Memory) 8位CMOS微控制器,使用 高密度、非易失存储技术制造,并且与80C52引脚和指令系统完全兼容。芯片上的 FPEROM允许在线编程或采用通用的非易失存储编程器对程序存储器重复编程。 AT89S52(以下简称 89C52)将具有多种功能的8位 CPU与FPEROM结合在一个芯片上, 为很多嵌入式控制应用提供了非常灵活而又价格适宜的方案,其性能价格比较高。 ATMEL公司的功能强大,低价位AT89S51单片机可提供许多高性价比的应用场合。单片 机广泛用于智能产品,智能仪表,测控技术,智能接口等,具有操作简单,实用方便, 价格便宜等优点,而其中AT89S52以MCS-52为内核,是单片机中最典型的代表,应用于 各种控制领域。 经过对比以及我们在日常教学中采用的是采用AT89S52,同时为提高我们对外围电路的焊 接等技术,提高综合能力,我们选择使用AT89S52单片机。 设计目标设计目标 该设计要求实现: 1 显示准确的北京时间(时、分) 2 可以调整系统时间:时、分; 3 可以调节闹铃时间:时、分,可以开启或关闭闹铃; 4 能显示当前日期对应的时间和温度。 设计结果要求: 完成电路的设计,硬件电路应该设计出原理图并画出 PCB 板图,完成软件程序的 编写(包括流程图和部分源代码)。 湖南铁道职业技术学院学生毕业设计(论文) 5 2.2.2 温度系统的比较与选择 方案一:采用DS18b20温度传感器 DS18b20 数字温度计以 9 位数字量的形式反映器件的温度值。 DS18b20 通过一个单线接口发送或接收信息,因此在中央微处理器和 DS18b20 之间仅需一条连接线(加上地线)。用于读写和温度转换的电源可 以从数据线本身获得,无需外部电源。 因为每个 DS18b20都有一个独特的 片序列号, 所以多只 DS18b20 可以同时连在一根单线总线上,这样就可以 把温度传感器放在许多不同的地方。这一特性在 HVAC 环境控制、探测建筑 物、仪器或机器的温度以及过程监测和控制等方面非常有用。 方案二:采用DS1620温度传感器 DS1620是一种半导体温度测控芯片,9位温度数据值,测温范围- 55+125,0.5的温度测量精度。通过三线串行接口与CPU连接,可作为 热传感器使用;用三个温控触发端控制加热或制冷装置,可用作热继电器。 DS1620的外围接线简单,使用灵活。 根据两方案的比较,从我们的实际情况出发,我们采用DS1620温 度传感器。 2.2.3 数码管驱动芯片的比较与选择 方案一:采用CS7219数码管驱动芯片 湖南铁道职业技术学院学生毕业设计(论文) 6 CS7219是一种串行接口的8位数码管显示驱动器。它与通用微 处理器只有3根串行线相连,最多可驱动8个共阴数码管和64个发光二极管。 它内部有可存储显示信息的8*8静态RAM,动态扫描电路,以及段位驱动器。 串行接口的传输速率可达10MHz,独立的发光二极管段控制,有译码非译码 两种显示方式可选,数字、模拟两种亮度控制方式,可以级联使用。 方案二:采用MAX7219数码管驱动芯片 MAX7219是一种串行共阴极数码管动态扫描显示驱动芯片,其峰值 段电流可达40mA,最高串行扫描频率为100MHz,典型扫描频率为1.3K。仅使 用3线串行接口传送数据,可直接与单片机接口。每个芯片可同时驱动8位共 阴极LED或64个独立的LED,可驱动8个数码管。该电路与单片机接口简单, 不需附加元件,占用很小的印刷板面积,是微处理器仪表理想的显示电路。 经过两方案的比较,并且根据实际情况,我们采用MAX7219作为数码 管的驱动芯片。 2.3 方案初步确定 通过以上两种方案论证和比较,从设计的实用性,方便性和成本出发, 选择了以AT89S52单片机作为中央处理器,DS1620温度传感器,MAX7219数码 管驱动芯片为主要器件进行此项目的设计。 湖南铁道职业技术学院学生毕业设计(论文) 7 2.32.3 硬件详细设计硬件详细设计 利用单片机芯片 AT89S52 来控制数码管显示模块 DS1620,通过软件编程改变 DS1620 的工作模式端口及使能端口,从而显示输出相应的内容。K0 键用来设置时 钟,当 K1=1 时,进行闹钟调节,K3 键用来移动光标选择调整位置,K4 键加法调 节。当 K1=0 时,可以调节系统时间,K3 键用来移动光标选择调整位置,K4 键加 法调节。当 K2=1 时,闹钟开始工作。当 AT89S52 的 P1.4 口输出为高电平时,启 动压电式蜂鸣器,整点报时或者闹钟报时。AT89S52 的 P0 口与液晶显示模块的 D0D7 口连接,进行数据的传输,P2 口的 5、6、7 数据位控制数码管显示模块的 E、RW 和 RS。S 键按下系统复位,晶振频率选用 12MHZ。 2.4 方案的拓展与最终确定: 为实现本设计的要求还可以合理地采用以下几种拓 展方案: 方案 1:采用数字电路的方法实现,将用到多级电路的级连,需要考虑电路的延时, 如果选择不当,就会有尖峰脉冲产生,导致设计的功能不能实现。 方案 2:采用专用的电子钟芯片配以显示电路及其所需要的元件组成电子钟。这样, 系统的扩展和器件的再利用困难。 湖南铁道职业技术学院学生毕业设计(论文) 8 方案 3:利用单片机控制液晶显示模块来实现,不仅具有编程灵活,程序较简洁, 便于电子钟功能的扩充,精度较高,而且可将其用于实时控制系统,从而应用到 实际工作与生产中去。 对比三种设计拓展方案,本设计采用方案 3。系统总体设计框图如图 1 所示,本系 统的硬件结构主要由单片机 AT89S52 控制的计时电路、复位等辅助电路,按键控 制电路,SMC1602A 液晶显示电路,电源系统等组成。该万年历可以显示年、月、 时、分、秒,可以设置年、月、时、分;其中计时控制电路由 AT89S52 单片机控 制,按键电路用于时间设置及复位;时间显示由 SMC1602A 完成;电源系统由小功 率整流滤波稳压电路组成,输出 5V 直流电压,供各部分使用。 本次设计采用图 1 系统总体设计框图;如下图所示 AT89S52 单片机控制模块 电源系统 按键控制电路 SMC 1602A 液晶显示模块 复位等辅助电路 T0定时器 时钟处理模块 图图 1 1 系统总体设计框图系统总体设计框图 湖南铁道职业技术学院学生毕业设计(论文) 9 本次设计采用如图 2-1 所示系统原理结构图;如下图所示 图2-1 系统原理结构框图 湖南铁道职业技术学院学生毕业设计(论文) 10 通过数字温度芯片对外界温度进行读取,并通过单片机进行转换,再由数码管进行 直观的数字显示.同时设定温度比较程序,由单片机进行测量温度与设定温度的比较,若 不在设定温度范围内,则令蜂鸣器报警. 单片机选用AT89S52作为温度测试系统设计的核心器件.它是具有高性能的8位单片机, 属于标准的MCS51的CMOS产品.不仅结合了HMOS的高速和高密度技术及CHMOS的低功耗特 征,而且继承和扩展了MCS48单片机的体系结构和指令系统. 数字温度芯片采用DS1620测量温度,输出信号全数字化.便于单片机处理及控制,省 去传统的测温方法的很多外围电路.且该芯片的物理化学性很稳定,它能用做工业测温元 件,此元件线形较好.在0100摄氏度时,最大线形偏差小于1摄氏度.采用52单片机控制, 软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小, 硬件实现简单,安装方便.既可以单独对多DS1620控制工作,还可以与PC机通信上传数据. 利用AT89S52芯片控制温度传感器DS1620进行实时温度检测并显示,能够实现快速测 量环境温度,并可以根据需要设定上下限报警温度.利用按键来进行调时和温度查询. 可以看出此方案测温装置电路简单、精确度较高、实现方便、软件设计也比较简单. 2.42.4 主控器件主控器件 本设计中使用 AT89S52 为主控芯片,它是一个低功耗,高性能 CMOS 8 位单片机, 片内含 8k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只 湖南铁道职业技术学院学生毕业设计(论文) 11 读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标 准 MCS-51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S52 可为许多嵌入式控制应用系统 提供高性价比的解决方案。 AT89S52 具有以下标准功能:8k 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门 狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结构, 全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作, 支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/ 计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。 本设计中 AT89S52 系统主要包括以下几个部分: 1 晶振电路 单片机的时钟信号通常有两种产生方式:一是内部时钟方式,二是外部时钟方式。 内部时钟方式是利用单片机内部的振荡电路产生时钟信号。外部时钟方式是把外 部已有的时钟信号引入到单片机内。 本设计采用内部时钟方式,电路图如图 2 所示。在单片机的 XTAL1 和 XTAL2 引脚 外接石英晶体(简称晶振),就构成了自激振荡器并在单片机内部产生时钟脉冲 信号。图中电容器 C1 和 C2 的作用是稳定频率和快速起振12。选用 C1=C2=30pF, 晶振频率 12MHz。 2 复位电路 复位是使单片机处于某种确定的初始状态。单片机工作从复位开始,在单片机 RST 引脚引入高电平并保持 2 个机器周期,单片机就执行复位操作。复位操作有两种 基本方式:一种是上电复位,另一种是上电与按键均有效的复位。上电复位要求 湖南铁道职业技术学院学生毕业设计(论文) 12 接通电源后,单片机自动实现复位操作。开机与按键均有效的复位,开机复位原 理与上电复位相同,另外,在单片机运行期间,还可以利用按钮完成复位操作12。 本设计复位电路如图 2 中所示,上电后,由于电容 C3 充电,使 RST 持续一段高电 平时间。若该高电平能保持足够 2 个机器周期,就可以实现复位操作。当单片机 已在运行之中时,按下复位键也能使 RST 持续一段时间的高电平,从而实现复位 的操作。选用 C3=22uF,R1=10K。 3 T0计时器 在计时过程中本设计利用了 AT89S52 计时器 T0作为计时源,计时器中断的准确度 直接关系到整个系统的精度,因此获取精确的定时时钟信号成为该系统的关键。 MCS-51 的单片机内有两个 16 位可编程的定时/计数器,在本系统设计中采用 AT89S52 的定时器 T0并工作在方式 1。 AT89S52 的定时/计数器 T0的内部结构和控制信号如图 3 所示1,特殊功能寄存器 由 TL0(低 8 位)和 TH0(高 8 位)构成,特殊功能寄存器 TMOD 控制定时寄存器的 工作方式,TCON 则用于控制定时器 T0和 T1的启动和停止计数,同时管理定时器 T0 和 T1的溢出标志等。程序开始时需对 TL0、TH0、进行初始化编程,以定义它们的 工作方式和控制 T0和 T1的计数。在系统的设计中,要求显示准确的北京时间(时、 分、秒)及公历日期(年、月、日),如果用循环去做,无法满足精度要求。选 用 12MHZ 的晶体可得到 1us 的精度,经分析确定使用定时器 T0的模式 1,这个模 式下定时器 T0是 16 位定时器,也就是最大定时值为 FFFFH,12MHZ 晶体的每个定 时周期为 1us,最多可以定时 FFFFH*1us=65536us,即使用最大值也无法一次定时 为 1 秒,设计中使用一次定时 20ms,50 次定时中断得到 1 秒。20ms 定时中断的定 时值为:FFFFH20ms/1us=B1DFH5。 湖南铁道职业技术学院学生毕业设计(论文) 13 C/ =0 C/ =1 中断 TH0 TL0 TF0 振荡器 12 分频 T0引脚 TR0 GATE 1 1 2.52.5 闹铃电路闹铃电路 整点报时或者闹钟报时出口采用压电式蜂鸣器,电路如图 2 所示, 压电式蜂鸣器 主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。 多谐振荡器由晶体管或集成电路构成。当接通电源后(1.515V 直流工作电压) ,多谐振荡器起振,输出 1.52.5kHZ 的音频信号,阻抗匹配器推动压电蜂鸣片发 声。 湖南铁道职业技术学院学生毕业设计(论文) 14 压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成。在陶瓷片的两面镀上 银电极,经极化和老化处理后,再与黄铜片或不锈钢片粘在一起。 2 2.6.6 显示部分显示部分 数码管显示模块具有体积小、功耗低、显示内容丰富、超薄轻巧等优点。因此本 设计显示部分采用了液晶显示器件 DS1620,它可以显示两行,每行 16 个字符,相 当于 32 个 LED 数码管,而且比数码管显示的信息还多,采用单+5V 电源供电,外 围电路配置简单,价格便宜,具有很高的性价比。 DS1620 的 8 位数据线与 AT89S52 的 P0 口相连,在 AT89S52 的控制下,利用单片机 内部的振荡电路产生时钟信号,由 P0 口输出送液晶显示模块 DS1620 显示,完成 对日历的显示功能,另外在进行时钟调整、闹铃调节等处理相应数据的显示功能。 DS1620 与单片机的接口电路如图 2 所示。3 条控制线分别接到 P2.5、P2.6、P2.7(可以根据具体的硬件电路修改这几条控制线);电阻 R8 用来 调节液晶显示的对比度,可以接一个 10K 的电位器来调节;电阻 R7 用来设置背光 的亮度,一般情况接一个 1K 的电阻就可以了,当然也可以接入电位器来调节显示 的亮度。 它的基本操作时序如下: 1 读状态,输入:RS=L,RW=H,E=H输出:D0D7=状态字 2 写指令,输入:RS=L,RW=L,D0D7=指令码,E=高脉冲输出:无 3 读数据,输入:RS=H,RW=HE=H输出:D0D7=数据 4 写数据,输入:RS=H,RW=L,D0D7=数据,E=高脉冲输出:无 2.62.6 电源电路的设计电源电路的设计 湖南铁道职业技术学院学生毕业设计(论文) 15 电源电路由变压器、桥式整流器、电容滤波器、LM7805、LED 电源指示灯等组成, 其电路如图 4 所示。其中 LM7805 为三端稳压器,它的内部由启动电路、基准电压 电路、取样比较放大电路、调整电路和保护电路等部分组成。它的输出端可以不 加旁路电容,但如果加旁路电容可以改善瞬态响应,如果稳压器远离滤波电容, 则必须在输入端加旁路电容。LM7805 电路参数:当 Tj=+25,输入为 7VVin20V,5.0mAIO1.0A,PO15W 时,输出 4.75VVO5.25V,本设计稳 压输出 5V,电源测试结果(见附件 2 图 1)。 电源工作原理:输入的 220V 左右的交流电压,经变压器、全波整流电桥 DB 整流 后,得到一幅值为 8V 左右的波动直流。这一波动的直流经 C5,C6 滤波后,得到 一较平稳的直流,再经 LM7805 稳压为+5V,C7 再次滤波后,得到稳定的+5V 直流 电流,向系统各模块提供能量。 湖南铁道职业技术学院学生毕业设计(论文) 16 湖南铁道职业技术学院学生毕业设计(论文) 17 第 3 章 系统器件选择 3.1 主控芯片介绍和有关器件介绍 主控芯片选择单片机 AT89S52,该单片机具有低电压供电和体积小等特点,很适合便 携手持式产品的设计使用系统可用二节电池供电.2 AT89S52 是一个低电压,高性能 CMOS 8 位单片机,片内含 4k bytes 的可反复擦写的 Flash 只读程序存储器和 128 bytes 的随机存取数据存储器(RAM),器件采用 ATMEL 公 司的高密度、非易失性存储技术生产,兼容标准 MCS-52 指令系统,片内置通用 8 位中央 处理器和 Flash 存储单元,内置功能强大的微型计算机的 AT89S52 提供了高性价比的解 决方案. AT89S52 是一个低功耗高性能单片机,40 个引脚,32 个外部双向输入/输出(I/O) 端口,同时内含 2 个外中断口,2 个 16 位可编程定时计数器,2 个全双工串行通信口, AT89S52 可以按照常规方法进行编程,也可以在线编程.其将通用的微处理器和 Flash 存 储器结合在一起,特别是可反复擦写的 Flash 存储器可有效地降低开发成本. AT89S52主要功能特性: 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-12Hz 三级程序存储器锁定 128*8位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 各引脚功能简单介绍如下: VCC:供电电压. 湖南铁道职业技术学院学生毕业设计(论文) 18 GND:接地. P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流.当P0口的管脚第 一次写1时,被定义为高阻输入.P0能够用于外部程序数据存储器,它可以被定义为数据/ 地址的第八位.在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原 码,此时P0外部必须被拉高. P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL 门电流.P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时, 将输出电流,这是由于内部上拉的缘故.在FLASH编程和校验时,P1口作为第八位地址接 收. P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL 门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入.并因此作为输 入时,P2口的管脚被外部拉低,将输出电流.这是由于内部上拉的缘故.P2口当用于外部 程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位.在给出地址 “1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其 特殊功能寄存器的内容.P2口在FLASH编程和校验时接收高八位地址信号和控制信号. P3口:P3口是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流.当P3口写 入“1”后,它们被内部上拉为高电平,并用作输入.作为输入,由于外部下拉为低电平, P3口将输出电流(ILL)这是由于上拉的缘故. P3口也可作为AT89S52的一些特殊功能口,如下所示: P3口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(计时器0外部输入) P3.5 T1(计时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号. RST:复位输入.当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间. 5 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字 节.在FLASH编程期间,此引脚用于输入编程脉冲.在平时,ALE端以不变的频率周期输出 湖南铁道职业技术学院学生毕业设计(论文) 19 正脉冲信号,此频率为振荡器频率的1/6.因此它可用作对外部输出的脉冲或用于定时目 的.然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲.如想禁止ALE的 输出可在SFR8EH地址上置0.此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用.另外, 该引脚被略微拉高.如果微处理器在外部执行状态ALE禁止,置位无效.6 /PSEN:外部程序存储器的选通信号.在由外部程序存储器取指期间,每个机器周期 两次/PSEN有效.但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现. /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管 是否有内部程序存储器.注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平 时,此间内部程序存储器.在FLASH编程期间,此引脚也用于施加12V编程电源(VPP). XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入. XTAL2:来自反向振荡器的输出. 3.13.1 系统的总流程图系统的总流程图 N 系统初始化 开中断 T0, INT0 调节时钟 (K0=1) Y 按 键 开 始 显 示 进行时钟调节 显 示 T0 计 时 时间历转换 功能模块流程图功能模块流程图 数码管显示模块数码管显示模块 湖南铁道职业技术学院学生毕业设计(论文) 20 数码管显示模块主要完成对日历的显示功能,另外在进行时钟调整、闹铃调节等 处理时完成对相应数据的显示,其基本流程图如图 6 所示。 其主要包括个三方面的操作: 1 LCD 的初始化,基主要程序实现如下所示: void lcd_init() lcd_wcmd(0x38); /设置显示模式: delay(2);/延时 2 秒 lcd_wcmd(0x08); /显示开/关设置 delay(1); lcd_wcmd(0x01); /清除 LCD 的显示内容 delay(1); lcd_wcmd(0x06); /文字不动,光标自动右移 delay(1); lcd_wcmd(0x0c); /显示器开、光标关、光标不允许闪烁 delay(1); 等待闲状态 初始化设置 送预置地址 写入数据 显示内容改变 等待 开始 Y N 数码管显示流程图数码管显示流程图 2 写指令操作,主要完成对 LCD 显示模式,位置等到处理操作,其主要程序实 现如下: void lcd_write_command(uchar command)/(命令,是否等待闲) while(wait_enable(); RS=0; RW=0; delay(5); 湖南铁道职业技术学院学生毕业设计(论文) 21 EN=0; P0=command; EN=1; EN=0; 3 写数据到 LCD,其主要源代码如下: void lcd_write_data(uchar char_data) while(wait_enable(); RS = 1; RW = 0; EN = 0; P0 = char_data; EN = 1; delay(1); EN = 0; 计时功能模块计时功能模块 在本设计中使用 AT89S52 的 T0中断进行了定时处理,由于中断服务程序及中断处 理过程需要一定的时钟周期,因此在进行定时设计时进行了修正处理,程序流程 图如图 7 所示: Y Y Y N N T0定时初始化值 时长 20 毫秒 T0中断 Clocks0加 1 1 秒到? 湖南铁道职业技术学院学生毕业设计(论文) 22 Clocks1加 1 Clocks0清 0 1 分到? Clocks2加 1 Clocks1清 0 1 小时到? ? N Clocks3加 1 Clocks2清 0 Y Y Y N Clocks4加 1 Clocks3清 0 Clocks5加 1 Clocks4清 0 Clocks6加 1 Clocks5清 0 N N Y N 计时流程图计时流程图 时钟调整节模块时钟调整节模块 湖南铁道职业技术学院学生毕业设计(论文) 23 为了使按键数最少,在时钟的调整中应用了 P1 口的四个输出位地址和外部中断 INT0。在系统初始化打开外部中断时,K0 键为高电平时进行时钟调节,此时关闭 T0中断,若 K1 键为高电平则进行系统时钟的调节,为低电平则是进行闹钟的调节, K2 键开启/关闭闹钟,K3 键用于设置状态的调节,即设置的是年还是其它,利用 外部中断 INT0进行加法调整,即 K4 键是加法调节器。 时钟调整 时钟调节键 K0=1? 调系统时钟或调闹钟 K1=1? Mode=1 State=0 Mode=2 State=0 K3 按下 K3 按下 返回 State0;x-) for(y=110;y0;y-); unsigned char jia(unsigned char jia) /*加 1 函数*/ if(key3_jia=0) /判断 key3 是否为低电平 delay(20); /延时消抖 if(key3_jia=0) /如果 key3 为低电平 jia+; /jia 自加 while(!key3_jia); /key3 不为低电平(松开按键 3) return(jia); /返回 unsigned char jian(unsigned char jian) /*减 1 函数*/ if(key4_jian=0) /判断 key4 是否为低电平 delay(20); /延时消抖 if(key4_jian=0) /如果 key4 为低电平 jian+; /jian 自减 while(!key4_jian); /key4 不为低电平(松开按键 4) if(jian #define uchar unsigned char uchar data MScond=0; /毫秒 uchar data Scond=0; /秒 uchar data Minute=0; /分 uchar data Hour=0; /小时 void main(void) 湖南铁道职业技术学院学生毕业设计(论文) 49 EA = 1; /允许 CPU 中断 ET0 = 1; /定时器 0 中断打开 第 7 章 操作指导书 湖南铁道职业技术学院学生毕业设计(论文) 50 7.1 操作技巧操作技巧 7.1.1 展示时刻和温度 本产品是利用软件 C 程序编程输入 AT89S51 单片机来控制 MAX7219 数码管驱动电 路和 DS1620 测温电路,并基本实现任务书所要求的基本功能。上电后会短暂显示 6 个 8 和小数点,延时 10ms 后自动显示软件所赋时间初始值和测量并显示当前温度,并能通过 按键来使显示复位重

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论