温度测量系统设计_第1页
温度测量系统设计_第2页
温度测量系统设计_第3页
温度测量系统设计_第4页
温度测量系统设计_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

目录TOC\o"1-5"\h\z1.引言 12.总体设计方案 13.硬件电路设计 2温度检测电路 2LED显示电路 2单片机电路 34.流程设计 45.总结 5参考文献 6附件1:系统电路原理整图 7附加2:设计的程序 81.引言温度是一种最基本的环境参数,人民的日常生活与环境的温度息息相关,另外它也是工业对象中主要的被控参数之一日前,典型的温度测控系统是由模拟式温度传感器,.A/D转换电路和单片机组成,由于模拟式温度传感器输出为模拟信号,必须经过A/D转换环节获得数字信号后才能与单片机等微处理器接口,使得硬件电路结构复杂,成本较高而以DS18B20为代替的新型单总线数字式温度传感器集温度测量和A/D换于一体,直接输出数字量,与单片机接口电路结构简单,应用广泛。[4]2•总体设计方案整个温度检测系统以AT89S52单片机为控制核心,DS18B20为测温传感器,实现温度测量,通过单片机将测得的温度在LED上显示。整个系统的硬件框图如下所示:2.1系统硬件结构框图[1]3.硬件电路设计3.1温度检测电路温度传感器采用DS18B20,它是一种单总线温度传感器,属于新一代适配微处理器的智能温度传感器。本设计的温度检测电路如下图所示:3.2LED显示电路整个系统主要采用的是四个7段共阳极数码管来显示测量的温度值,下面这个是LED显示电路图:Rp1R口-—LIPf^5—3Lprl£e4OTJ3anJcJd£rlse-®1hlItRp1R口-—LIPf^5—3Lprl£e4OTJ3anJcJd£rlse-®1hlIt■丽G5NBL////匸34CT33/n4IKR4RJ3.2LED显示电路[1]3.3单片机电路本系统单片机采用AT89S52,它是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器,使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。本系统的单片机电路图如图所示:

4.流程设计系统开始工作时,首先进行I/o口初始化然后判断开关是否闭合,确定后由单片机控制软件发出温度读取指令,通过数字温度传感器DS18B20采集当前温度值,转换后经过单总线传输给单片机,单片机经过处理由数码管显示系统的软件部分主要是由中断子程序、读写DB18B20程序、显示程序三部分组成,主程序流程图如图所示:

4.1程序流程图[3]5•总结温度传感器DS18B20转化温度的力一法非常简洁且精度高、测试范围较广。单片机体积小、重量轻、抗干扰能力强、对环境要求小高、价格低廉、可靠性高、灵活性好因此这种温度测量系统能应用于各种场合,具有很大的应用价值。在本系统的基础上,增加报警电路,温度超过设定范围时发出声光报警。利用串日通信,还叫实现远程温度控制。该系统小仅叫测温度,如果选用其它相关传感器,还叫用来测压力,流量,位移等非电量。因此,该系统具有广泛的适应性。[2]参考文献[1]何宗虎.基于单片机的高精度温度测量系统设计[J].现代电子技术,201134(.9);130-132.[2]陈同果.基于DS18B20的单片机温度测量系统[J].科技资讯2007,17;110-111.⑶王丹.基于单片机的多点温度测量系统设计J].科技天地,2011,14;90.[4]王龙.基于51单片机与DS18B20的温度测量系统[J].科技向导,2011,27;29-30.附件1系统电路原理整图I—■rIrnI■»^f_I 」__fi="S>—■nIrnI'M"・c^-LI—■rIrnI■»^f_I 」__fi="S>—■nIrnI'M"・c^-LJj iinrr-| !-^T|W-Jc- <s]冃,~| «r-v-iu—j-^-j-rr~jr—-i―iA呂呂呂呂弐呂囹配屮日日血屈目耳同同土占l-M控制与显示程序(1)附加2:设计的程序#include<at89X52.h>#include<stdio.h>#include<intrins.h>sbitDQ=P3人2; 〃定义DS18B20的数据口unsignedcharTAP[10]= //共阳极,不带点{0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,};unsignedcharTAP2[10]= //共阳极,带点{0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,};//定义一个存放转换后温度值的数组,温度值为字符型(ASCII码),小数点后保留2位unsignedcharstr[10]; //延时子程序,延时(10*D+3)usvoiddelay_l0us(unsignedcharD){unsignedchari;for(i=0;i<D;i++){_nop_();〃空操作,一个指令周期_nop_();}}//DS18B20初始化voidINIT(void){ DQ=0;delay_l0us(50); //等待500usDQ=1; 〃释放18B20数据线delay_l0us(9); //等待90uswhile(!DQ); 〃等待18B20准备好}〃读DS18B20的程序unsignedcharREAD(void){ unsignedchari;unsignedcharD=0;for(i=0;i<8;i++) //读8位数据{D=D>>1; //先读数据低位DQ=0;_nop_();DQ=1; 〃释放18B20数据线for(j=1;j<9;j++){ _nop_(); }if(DQ)D+=0x80 〃如果数据线上是"1",D最高位为"1",否则为"0"delay_l0us(6);}returnD; 〃返回值为D.即读出的一个字节数据}〃写DS18B20的程序voidWRITE(unsignedcharD){unsignedchari;for(i=0;i<8;i++){DQ=0;if(D&0x01)DQ=1;else DQ=0;delay_l0us(8);DQ=1;D=D»1;〃右移一位,准备写下一位}}〃显示程序(str数组内元素是ASCII码,所以要减去48)voiddisplay(void){unsignedchari;unsignedcharj=100;while(j-){for(i=0;i<255;i++){P0=TAP[str[0]-48];P2=0xl:}for(i=0;i<255;i++){P0=TAP2[str[1]-48]P2=0x2;}for(i=0;i<255;i++){P0=TAP[str[3]-48];P2=0x4}for(i=0;i<255;i++){P0=TAP[str[4]-48];P2=0x8}}}//主程序voidmain(){unsignedcharwarning=30;unsignedcharTMP_H=0;unsignedcharTMP_L=0;short TMP=0; //短整型数据floatTMP_F=0; //浮点型数据{if(P1_0==0)warning+=1; //增加上限elseif(P1_1==0)warning+=1;//减小上限elsewarning+=0;str[0]=warning/10+48;str[1]=warning%10+48;str[3]=48;str[4]=48;display()delay_10us(5);}INIT(); //初始化DS18B20WTITE(OxCC); 〃跳过ROM配置WRITE(0x44); //开始转换温度display。; 〃默认至少等待750ms,用于温度转换INIT(); //初始化DS18B20WRITE(0xCC); //跳过ROM配置WRITE(0xBE); //准备读取温度值TMP_L=

温馨提示

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

评论

0/150

提交评论