温度检控制系统.doc

上传人:s9****2 文档编号:545746792 上传时间:2023-12-17 格式:DOC 页数:9 大小:58.50KB
返回 下载 相关 举报
温度检控制系统.doc_第1页
第1页 / 共9页
温度检控制系统.doc_第2页
第2页 / 共9页
温度检控制系统.doc_第3页
第3页 / 共9页
温度检控制系统.doc_第4页
第4页 / 共9页
温度检控制系统.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《温度检控制系统.doc》由会员分享,可在线阅读,更多相关《温度检控制系统.doc(9页珍藏版)》请在金锄头文库上搜索。

1、温度控制系统功能要求:设计成温度计的形式,使之能够检测出周围温度,且使温度计的测温范围在-55125度之间,采用LED数码管直读显示。方案论证:本温度计设计采用智能温度传感器DS18B20作为检测元件,DS18B20可以直接读出被测温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。按照系统设计功能的要求,确定系统由三个模块组成:主控制器,测温电路和显示电路。实验器材:DS18B20温度传感器,单片机STC89C52, 12MHz晶振,LED数码管,电阻,电容,三极管,电源等。温度传感器DS18B20的性能特点: 独特的单线接口仅需要一个端口引脚进行通信,不需要

2、外部器件,可通过数据线供电,电压范围为3.05.0V,零待机功耗,负电压特性,电源极性接反时温度计不会因发热而烧毁,只是不能正常工作等。电路设计原理图:温度计设计电路原理图如图所示,控制器使用单片机STC89C52,温度传感器使用DS18B20用4位共阳LED数码管以动态扫描法实现温度显示。PCB图:DS18B20 与单片机的接口电路: DS18B20可以采用两种方式供电:一种是采用电源供电方式,此时DS18B20第一脚接地,第二脚为信号线,第三脚接电源;另一种是寄生电源供电方式。单片机接口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上

3、拉。当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最长为500ms,采用寄生电源供电方式时VDD和GND均接地。由于单线制只有一根线,因此发送接口必须是三态的。系统程序的设计:系统程序主要包括主程序、读出温度子程序、温度转换命令子程序和显示数据刷新子程序等。主程序: 主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量温度值。温度测量没1m进行一次。读出温度子程序:读出温度子程序的主要功能是读出RAM中的9字节。在读出时须进行CRC校验,校验有错时不能进行温度的改写。温度转换命令子程序;温度转换命令子程序主要是发温度转换开始命令,当采

4、用12位分辨率时,转换时间约为750ms,在本程序设计中,采用1s显示程序延时法等待转换的完成。计算温度子程序:计算温度子程序将RAM中读取值进行BCD码得转换运算,并进行温度值正负的判定。显示数据刷新子程序: 显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高数据显示为0时,将符号显示位移入下一位。调试及性能分析: 系统的调试以程序调试为主。硬件调试比较简单,首先检验电路的焊接是否正确,然后可用万用表测试或通电检测。软件调试可以先编写显示程序并进行硬件的正确性检验,然后分别进行主程序、读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新子程序等的编程和调试。软件

5、调试到能显示温度值,而且在有温度变化时显示温度能改变,就基本完成。单片机C语言源程序:#include#include#define Disdata P1#define discan P3#define uchar unsigned char#define uint unsigned intsbit DQ=P37;sbit DIN=P17;uint h;uchar code ditab16=0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;uchar code dis_712=0xC0

6、,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff,0xbf ;uchar code scan_con4=0xf7,0xfb,0xfd,0xfe;uchar data temp_data2=0x00,0x00;uchar data display5=0x00,0x00,0x00,0x00,0x00;void delay(uint t)for(;t0;t-);scan()char k; for(k=0;k0;i-)DQ=1;_nop_();_nop_();DQ=0;_nop_();_nop_();_nop_();_nop_();_nop_();D

7、Q=val&0x01;delay(6);val=val/2;DQ=1;delay(1);uchar read_byte(void)uchar i;uchar value=0;for(i=8;i0;i-)DQ=1;_nop_();_nop_();value=1;DQ=0;_nop_();_nop_();_nop_();_nop_();DQ=1;_nop_();_nop_();_nop_();_nop_();if(DQ)value|=0x80;delay(6);DQ=1;return(value);read_temp()ow_reset();write_byte(0xCC);write_byte(

8、0xBE);temp_data0=read_byte();temp_data1=read_byte();ow_reset();write_byte(0xCC);write_byte(0x44);work_temp()uchar n=0;if(temp_data1127)temp_data1=(256-temp_data1);temp_data0=(256-temp_data0);n=1;display4=temp_data0&0x0f;display0=ditabdisplay4;display4=(temp_data0&0xf0)4)|(temp_data1&0x0f)4);display3

9、=display4/100;display1=display4%100;display2=display1/10;display1=display1%10;if(!display3)display3=0x0A;if(!display2)display2=0x0A;if(n)display3=0x0B;main()Disdata=0xff;discan=0xff;for(h=0;h4;h+)displayh=8;ow_reset();write_byte(0xCC);write_byte(0x44);for(h=0;h500;h+)scan();while(1)read_temp();work_temp();for(h=0;h500;h+)scan();

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

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号