毕业论文_基于单片机的数字温度计.doc_第1页
毕业论文_基于单片机的数字温度计.doc_第2页
毕业论文_基于单片机的数字温度计.doc_第3页
毕业论文_基于单片机的数字温度计.doc_第4页
毕业论文_基于单片机的数字温度计.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

数字温度传感器DS18B20的应用仿真设计Temperatur measurement; DS18B20; LED不要删除行尾的分节符,此行不会被打印目录第1章 绪论11.1课题的设计目的51.2课题的主要工作51.3本文研究内容6第2章 开发工具Proteus与Keil82.1 Proteus软件82.2 Keil软件112.3本章小结12第3章 系统概述133.1方案选择133.1.1方案一133.1.2方案二143.2系统设计原理143.3系统组成143.4 DS18B20温度传感器与单片机的接口电路153.5本章小结16第4章 系统硬件设计174.1 80C51单片机的介绍174.1.1 80C51单片机管脚图184.1.2 80C51单片机的中断系统194.1.3 80C51单片机的定时/计数器214.2 LCD液晶显示器简介214.2.1液晶模块图示224.2.2液晶显示部分与89C51的接口234.3通讯模块244.4 DS18B20介绍254.4.1温度传感器工作原理254.4.2 DS18B20使用中的注意事项274.5本章小结28第5章 系统软件设计305.1主程序设计305.2 DS18B20初始化315.3数据测试325.4仿真结果325.5本章小结34结论35参考文献37附录A38附录B45千万不要删除行尾的分节符,此行不会被打印。在目录上点右键“更新域”,然后“更新整个目录”。打印前,不要忘记把上面“Abstract”这一行后加一空行- 1 - 第1章 绪论 1.1课题的设计目的1. 巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力。2. 培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力。3. 通过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。1.2课题的主要工作本课题的研究重点是设计一种基于单片机的数字温度计控制系统。利用数字温度传感器DS18B20,此传感器课读取被测量温度值,进行转换。主要工作如下:1. 温度测试基本范围0100。2. 精度误差小于1。3. LED液晶显示。4. 可以设定温度的上下限报警功能。5. 实现报警提示。1.3本文研究内容数字温度计采用温度敏感元件也就是温度传感器(如铂电阻,热电偶,半导体,热敏电阻等),将温度的变化转换成电信号的变化,如电压和电流的变化,温度变化和电信号的变化有一定的关系,如线性关系,一定的曲线关系等,这个电信号可以使用模数转换的电路即A/D转换电路将模拟信号转换为数字信号,数字信号再送给处理单元,如单片机或者PC机等,处理单元经过内部的软件计算将这个数字信号和温度联系起来,成为可以显示出来的温度数值,如25.0摄氏度,然后通过显示单元,如LED,LCD或者电脑屏幕等显示出来给人观察。这样就完成了数字温度计的基本测温功能。 本文是基于AT89S51单片机,采用数字温度传感器DS18B20,利用DS18B20不需要A/D转换,课直接进行温度采集显示,报警的数字温度计设计。包括传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等组成。 第2章 开发工具Proteus与Keil 2.1 Proteus软件2.2 Keil软件2.3软件应用小结实验之前应强化自己对研究本课题需要用到的仿真软件Proteus和编译软件Keil的熟练操作程度,了解这两种软件功能和初步用法,了解了proteus的四大功能模块,以及keil的调试功能等,为以后设计打好基础,使后来仿真可顺利进行。第3章 系统概述3.1方案选择该系统主要由温度测量和数据采集两部分电路组成,实现的方法有很多种,下面将列出两种在日常生活中和工农业生产中经常用到的实现方案。3.1.1方案一采用热电偶温差电路测温,温度检测部分可以使用低温热偶,热电偶由两个焊接在一起的异金属导线所组成,热电偶产生的热电势由两种金属的接触电势和单一导体的温差电势组成。通过将参考结点保持在已知温度并测量该电压,便可推断出检测结点的温度。数据采集部分则使用带有A/D 通道的单片机,在将随被测温度变化的电压或电流采集过来,进行A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来。热电偶的优点是工作温度范围非常宽,且体积小,但是它们也存在着输出电压小、容易遭受来自导线环路的噪声影响以及漂移较高的缺点,并且这种设计需要用到A/D 转换电路,感温电路比较麻烦。系统主要包括对A/D0809 的数据采集,自动手动工作方式检测,温度的显示等,这几项功能的信号通过输入输出电路经单片机处理。此外还有复位电路,晶振电路,启动电路等。故现场输入硬件有手动复位键、A/D 转换芯片,处理芯片为51 芯片,执行机构有4 位数码管、报警器等。【1】系统框图如图 3-1所示。图 3-1 热电偶温差电路测温系统框图3.1.2方案二采用数字温度芯片DS18B20 测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0100 摄氏度时,最大线形偏差小于1 摄氏度。DS18B20 的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器AT89S51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大。采用51 单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC 机通信上传数据,另外AT89S51 在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。【1】该系统利用AT89S51芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度,并可以根据需要设定上下限报警温度。该系统扩展性非常强,它可以在设计中加入时钟芯片DS1302以获取时间数据,在数据处理同时显示时间,并可以利用AT24C16芯片作为存储器件,以此来对某些时间点的温度数据进行存储,利用键盘来进行调时和温度查询,获得的数据可以通过MAX232芯片与计算机的RS232接口进行串口通信,方便的采集和整理时间温度数据。从以上两种方案,容易看出方案一的测温装置可测温度范围宽、体积小,但是线性误差较大。方案二的测温装置电路简单、精确度较高、实现方便、软件设计也比较简单,故本次设计采用了方案二。3.2系统设计原理利用温度传感器DS18B20可以直接读取被测温度值,进行转换的特性,模拟温度值经过DS18B20处理后转换为数字值,然后送到单片机中进行数据处理,并与设置的温度报警限比较,超过限度后通过扬声器报警。同时处理后的数据送到LED中显示。3.3系统组成本课题以是80C51单片机为核心设计的一种数字温度控制系统,系统整体硬件电路包括,传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等组成。系统框图主要由主控制器、单片机复位、报警按键设置、时钟振荡、LED显示、温度传感器组成。系统框图如图3-2所示。图3-2 系统基本方框图1. 主控制器单片机AT89C51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。2. 显示电路显示电路采用LED液晶显示数码管,从P3口RXD,TXD串口输出段码。显示电路是使用的串口显示,这种显示最大的优点就是使用口资源比较少,只用p3口的RXD,和TXD,串口的发送和接收,四只数码管采用74LS164右移寄存器驱动,显示比较清晰。3. 温度传感器温度传感器采用美国DALLAS半导体公司生产的DS18B20温度传感器。DS18B20输出信号全数字化。便于单片机处理及控制,在0100 摄氏度时,最大线形偏差小于1 摄氏度,采用单总线的数据传输,可直接与计算机连接。用AT89S51芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度,并可以根据需要设定上下限报警温度。获得的数据可以通过MAX232芯片与计算机的RS232接口进行串口通信,方便的采集和整理时间温度数据。3.4 DS18B20温度传感器与单片机的接口电路DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3-3 所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。【2】当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时VDD端接地。由于单线制只有一根线,因此发送接口必须是三态的。 图3-3 DS18B20与单片机的接口电路3.5本章小结本章简述了数字温度控制系统的设计思路,设计方案选择,以及系统的组成、设计原理,详细介绍了主板电路和显示电路的结构,并简单介绍了数字温度传感器DS18B20的特点。并通过框图形式更直观、更形象地描述了系统的整体组成。 第4章 系统硬件设计4.1 80C51单片机的介绍80C51单片机最初是由Intel 公司开发设计的,但后来Intel 公司把51 核的设计方案卖给了几家大的电子设计生产商,譬如 SST、Philip、Atmel 等大公司。如是市面上出现了各式各样的但均以51 为内核的单片机,倒是Intel 公司自己的单片机却显得逊色了。这些各大电子生产商推出的单片机都兼容51 指令、并在51 的基础上扩展一些功能而内部结构是与51 一致的。80C51有40个引脚,4个8位并行I/O口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。80C51的存储器系统由4K的程序存储器(掩膜ROM),和128B的数据存储器(RAM)组成。【3】 80C51单片机的基本组成框图见图4-1。【3】图4-1 80C51单片机结4.1.1 80C51单片机管脚图图4-2 80C51单片机管脚图4.1.2 80C51单片机的中断系统80C51系列单片机的中断系统有5个中断源,2个优先级,可以实现二级中断服务嵌套。由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求;由中断优先级寄存器IP安排各中断源的优先级;同一优先级内各中断同时提出中断请求时,由内部的查询逻辑确定其响应次序。4.1.3 80C51单片机的定时/计数器在单片机应用系统中,常常会有定时控制需求,如定时输出、定时检测、定时扫描等;也经常要对外部事件进行计数。80C51单片机内集成有两个可编程的定时/计数器:T0和T1,它们既可以工作于定时模式,也可以工作于外部事件计数模式,此外,T1还可以作为串行口的波特率发生器。4.2 LCD液晶显示器简介显示接口用来显示系统的状态,命令或采集的电压数据。本系统显示部分用的是LCD液晶模块,采用一个161的字符型液晶显示模块。 4.2.1液晶模块图示图4-3 1601引脚图 4.2.2液晶显示部分与89C51的接口 图4-4 液晶与89C51的接口4.3通讯模块80C51内部已集成通信接口URT,只需扩展一片MAX232芯片将输出信号转换成RS-232协议规定的电平标准。MAX232引脚图如图4-5所示。图4-5 MAX232引脚功能图4.4 DS18B20介绍DS18B20引脚如图4-6所示。图4-6 DS18B20引脚图DALLAS 最新单线数字温度传感器DS18B20是一种新型的“一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。温度测量范围为-55+125 摄氏度,可编程为9位12 位转换精度,测温分辨率可达0.0625摄氏度。 CPU只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。4.4.1温度传感器工作原理图4-7 DS18B20内部结构4.4.2 DS18B20使用中的注意事项DS18B20 虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:1. DS18B20 从测温结束到将温度值转换成数字量需要一定的转换时间,这是必须保证的,不然会出现转换错误的现象,使温度输出总是显示85。2. 在实际使用中发现,应使电源电压保持在5V 左右,若电源电压过低,会使所测得的温度精度降低。3. 较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。4. 在DS18B20的有关资料中均未提及单总线上所挂DS18B20 数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此,当单总线上所挂DS18B20 超过8 个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。5. 在DS18B20测温程序设计中,向DS18B20 发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20 接触不好或断线,当程序读该DS18B20 时,将没有返回信号,程序进入死循环,这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。4.5本章小结本章重点分析了数字温度计控制系统的硬件电路设计,介绍了设计中所用到的芯片,包括单片机芯片80C51、液晶显示芯片LM016L、数字温度传感器芯片DS18B20等。介绍了80C51结构、特点、中断、定时/计数等。介绍了设计中所用到的芯片。通过本章的学习加深了51单片机的了解,熟悉了数字温度传感器DS18B20。第5章 系统软件设计5.1主程序设计主程序流程见图5-1。图 5-1 主程序流程图5.2 DS18B20初始化18B20初始化流程图见图5-2。图 5-2 DS18B20初始化流程图 5.3数据测试将温度传感器与冰水混合物接触,经过充分搅拌达到热平衡后调节系统,使显示读数为0.00(标定0);利用气压计读出当时当地的大气压强,并根据大气压强和当地重力加速度计算出当时的实际压强;根据沸点与压强的关系查出沸点温度。把温度传感器放入沸水中,待显示读数稳定后重新调节,使显示器显示读数等于当地当时沸点温度后工作结束。该温度计的量程为0100,读数精度为0.1,实际使用一般在0100。采用050和50100的精密水银温度计作检验标准,对设计的温度计进行测试,其结果表明能达到该精度要求。5.4仿真结果设置温度上限为37度,温度下限为10度。1.如图5-3所示。此时温度时43度,超出上限温度,黄灯亮,实现报警。图5-3 仿真12.如图5-4所示。此时温度为5度,低于下限温度,绿灯亮,实现报警。图5-4 仿真23.如图5-5所示。此时温度为20度,在所设范围内,两灯都没亮,说明温度正常。图5-5 仿真35.5本章小结本章对基于单片机的数字温度控制系统的软件程序进行了简要介绍,介绍了主程序设计及DS18B20的初始化,并给出设计流程图,更直观的把软件设计呈现出来作出了设计的仿真,设置上线限温度,并作3种情况分析。验证了设计的正确性。通过本章的介绍了解软件设计流程,熟悉51单片机的编程。结论本文介绍了基于80C51单片机的数字温度计控制系统的设计,对整个硬件电路和软件程序设计做了分析,文中介绍了数字温度计的现状及发展,介绍了仿真软件proteus及keil的基本知识,学习了proteus的仿真方法和步骤,介绍了数字温度计的设计方案选择及原理介绍,加深了51单片机的知识了解,介绍51单片机的结构、特点等。并学习了数字温度传感器DS18B20,设计软件仿真,更直观的反应设计的正确性。本文对其中的一些基本原理也做了简要的概述。其实写完了本篇论文,也仅仅是对数字温度计控制系统做出了一个简单的设计方案,数字温度计科利用在很多领域,在一些人不能直接进入的场所,利用单片机控制的数字温度计,可以设置并控制其中的温度,数字温度计还可以利用在温室中,这样就可以方便的控制温室中的温度,当温度超过所要求的温度时,可发生报警。总之数字温度计利用在很多领域。本课题只是单片机控制数字温度计系统得一种设计方法。通过这一阶段的努力,我的课程设计数字温度传感器DS18B20的应用仿真设计终于完成了,在我做课程设计的过程中,王文洋老师指导了我很多,并对实践中出现的问题给予耐心的解答,在此对他表示感谢。参考文献1 杨素行著.模拟电子技术基础(第二版) .北京:高等教育出版社,2006.2 阎石著.数字电子技术基础(第五版) .北京:高等教育出版社,2006.3 李全利,仲伟峰,徐军著.单片机原理及应用.北京:清华大学社,2006.4 何立民著单片机高级教程北京:北京航空航天大学出版社,2000.5 杨路明著C语言程序设计教程(第2版) 北京:北京邮电大学出版社,2005.6 马忠梅,籍顺心,张凯等著.单片机的C语言应用程序设计(第4版) .北京:北京航天航空大学出版社,2007.7 白驹珩,雷晓平著单片计算机及其应用成都:电子科技大学出版社,1997.8 谭浩强著程序设计与开发技术北京:清华大学出版社,1991.9 钟富昭著.8051单片机典型模块设计与应用.北京:人民邮电出版,2007.10 于永,戴佳,常江著.51单片机C语言常用模块与综合系统设计实例精讲.北京:电子工业出版社,2007.11 梁翎著C语言程序设计实用技巧与程序实例.上海:上海科普出版社,1998.12 Li Wei-di,Guo Qiang. Application technology of LCD displays.China Publishing House of Electronics Industry, 2000.13 Su Kai,Liu Qing-guo, Chen Guo-ping. Principle and design of MCS-51 Single-chip microprocessor.Metallurgical Industry Press, 2003.14 Lou Jianan Liang Xiaolin Feng Changjiang etc. A Missile Storage Battery Charging Instrument based on 80C196KC Single Chip Microcomputer.The 5th International Symposium on Test and Measurement. Shenzhen, Guangdong China.2003. 15. omas C.Bartee.Computer Architecture and Logic DesignJ.McGraw-Hill Inc. 1991.915 G Jiang M Zhang, X Xie, S Li.Application on temperature control of DS18B2J.Control Engineering of China, 2003附录A 系统整体电路附录B 全部程序清单#include#define uchar unsigned char #define uint unsigned int uchar i;sbit lcdrs=P30;sbit lcdrw=P31;sbit lcden=P32;sbit d1=P10;sbit d2=P11;uchar code t0=The temperature ;uchar code t1= is ;uchar code wendu=0123456789; /利用一个温度表解决温度显示乱码sbit DQ = P37;/定义ds18B20总线IO/液晶显示模块void delay(uint z)uint x,y;for(x=100;x1;x-)for(y=z;y1;y-);void write_com(uchar com)lcdrs=0;P2=com;delay(5);lcden=1;delay(5);lcden=0;void write_date(uchar date)lcdrs=1;P2=date;delay(5);lcden=1;delay(5);lcden=0;void init_lcd()lcden=0;lcdrw=0;write_com(0x38);write_com(0x01);

温馨提示

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

评论

0/150

提交评论