基于STC89C51RC和DS18B20的简单数字温度计

上传人:夏** 文档编号:456582685 上传时间:2022-08-29 格式:DOC 页数:14 大小:285.57KB
返回 下载 相关 举报
基于STC89C51RC和DS18B20的简单数字温度计_第1页
第1页 / 共14页
基于STC89C51RC和DS18B20的简单数字温度计_第2页
第2页 / 共14页
基于STC89C51RC和DS18B20的简单数字温度计_第3页
第3页 / 共14页
基于STC89C51RC和DS18B20的简单数字温度计_第4页
第4页 / 共14页
基于STC89C51RC和DS18B20的简单数字温度计_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《基于STC89C51RC和DS18B20的简单数字温度计》由会员分享,可在线阅读,更多相关《基于STC89C51RC和DS18B20的简单数字温度计(14页珍藏版)》请在金锄头文库上搜索。

1、基于STC89C51RC和DS18B20的简单数字温度计学生姓名:孙佳辉专业:电气工程及其自动化班级:040841学院:机电工程学院 摘要温度的检测与控制是工业生产过程中比较典型的应用之一,随着传感器在生活中的更加广泛应用,利用新型数字温度传感器实现对温度的测试与控制得到更快的开发,本文设计了一种基于AT89C52的温度检测及报警系统。该系统可以方便的实现温度采集和显示,并可根据需要任意设定上下限报警温度,它使用起来相当方便,具有精度高,量程宽,灵敏度高,体积小,功耗低等优点,适合于我们日常生活和工作,农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。该系统

2、设计和布线简单结构紧凑,抗干扰能力强,在大型仓库,工厂,智能化建筑等领域的温度检测中有广泛应用前景关键词:单片机 DS18B20温度传感器 智能化 ABSTRACTTemperature measurement and control of industrial process is one of the typical applications ,as sensors have more extensive application in today ,to use the new digital temperature sensors for temperature testing and

3、controlling get fast development ,this paper design a system based on AT89C52 for temperature testing and alarming .The system is easy to realize the temperature gathering and displaying , and can according to need set temperature for arming , it is very convenient to use it .It has the advantages o

4、f high precision , ranging wide high sensitivity , small volume , low power , it suits our daily life work and agriculture temperature , also auxiliary part in other main system . The system design and wiring simple , compact structure , strong anti-jamming capability ,it has broad application prote

5、st in large warehouse , factories ,intelligent building and other areas of temperature testing .Keywords: Microcontroller Temperature sensor DS18B20 Intelligent一、 综述:1. DS18B20摘要单线数字温度传感器DS18B20为当前应用最为广泛的温度传感器之一,可以提供9位温度读数。其与控制器件的通信信息经过单线接口从DS18B20输出或送入,使中央处理器件只需一条信号线就可实现对温度的测量,且从DS18B20输出的温度数据为数字信号

6、,不需要再加AD芯片进行转换,使测温的实现更加方便。具体PDF详细资料在维库网、周立功单片机网均可查到。2. DS18B20优缺点厂家生产的DS18B20有唯一的序列号,这使得多个DS18B20能接在同一条单线总线上,而这条总线能环绕整个需要测温的环境,能使环境的温度数据全方位的在人工检测和控制之下。另外,DS18B20的测温原理独特:利用两个温度系数不同的晶振对计数器进行控制,从而使不同的温度下计数值不同,再将其转换为温度数据存储,即可省略AD转换的一步,在数字化日益成熟的今天,这种测温原理是很符合发展趋势的,能为其它类型的传感器测量数据提供了新方法。当然,DS18B20并不是十全十美的,通

7、过对其资料的熟悉及进行一些简单的使用后,发现其主要有两方面不足:1)温度测量的精度相对而言并不十分高,对于需要通过温度进行精密控制的仪器不是很适合;2)测温范围为-55125,且在温度小于-15和高于105时误差达到3,因此其测温范围是很有限的。3. DS18B20的有关发展趋势由于虚拟仪器的发展,通过单片机等控制器件将DS18B20测温器件与PC机连接,编制软件能实现更加人性化的温度检测与控制系统。或者通过PC机的控制使得DS18B20测温系统成为某一工业生产、过程控制等过程的一个子系统进行服务。在自动化、智能化高速发展的时代,PC机与传感器的结合会带来非常大的效益,因而DS18B20往这一

8、方面发展是比较符合现实需要的。由于DS18B20可以用遥控的方式设定其报警温度,近来我国发生了多起因高温而而引起的汽车自燃,如果在车身对高温敏感且易引发自燃的部位装上DS18B20进行实时监测和发出警报,则可避免许多因温度骤变而带来的损失。以上仅是通过对于现实问题的学习与思考得出的关于DS18B20的两个方面的应用实例,然而关于DS18B20的发展前景我认为是比较大的,可以从探索新测温元件以扩大测温范围、增加测量精确度、发现更完善测温原理与方法、测温元件适用工程与生活实例探究、测温元件测量效果评估方法、大型多功能智能化测温精密仪器的研发等诸多方面进行研究建立一套很为完善的符合实际需要的理论系统

9、。总之,研发者必须用创新与发展的眼光看问题,而研制的理论系统与产品要能够促进社会的发展。二、工作内容:1. 总体电路设计(1)STC89C52单片机:主要用于与DS18B20进行单线通信控制其测温过程及将温度数据显示到三个数码管。(2)数码管显示:用三个数码管显示温度,第一个显示十位,第二个显示个位和小数点,第三个显示小数位。 (3)DS18B20测温:用DS18B20信号线与单片机一引脚相接,以进行指令与数据传输。(4)单片机按键复位电路:按键按下时,数码管不显示;松开按键时,单片机内程序从头开始执行。(5)电源显示:当电路通电时,电源指示灯亮(6)74HC573锁存器:驱动数码管显示温度。

10、STC89C51单片机按键复位电源显示数码管显示数据DS18B20测温图一:系统结构框图2. 电路接线设计由单片机P1口接数码管八个段选线引脚(引脚号分别为11、7、4、2、1、10、5、3),控制需要显示的数字。由单片机P2口接数码管共八个位选引脚(引脚号分别为6、8、9、12,6、8、9、12),控制显示数字的位。在电源线与单片机RESET引脚之间连接一个按钮,作为按键复位用。在电路板电源与地之间连接一个红色发光二极管,作为电路板通电指示用。将一根数据线的与电源适配器连接的接口保留,另一端剪开将红色线接电路板电源及,黑色线接电路板地极。绿色与白色线为数据线,此处只用其电源线,故此二线悬空。

11、图二:DS18B20测温原理图3. 程序设计此程序设计用到软件工具:Keil Uvision3、STC-ISPV391。此程序设计的难点在于对DS18B20进行操作的时序控制。1)复位与应答时序:将信号线电平拉低480-960us,等待15-60us后度信号线电平,为低电平则复位成功,复位成功后再做约240us的延时;2)写时序:主机把信号线从逻辑高电平拉至逻辑低电平时,低电平持续时间至少1uS,产生写时间片。在变为低电平15uS之后,DS18B20在15-45uS之间对信号线采样,如果信号线为高电平,就写1,如果线为低电平,就写0。时间片必须有最短为60uS的持续期,各写周期之间须有最短为1

12、uS的恢复时间;3)读时序:主机将信号线从逻辑高电平拉低时,产生读时间片。低电平持续时间至少1uS,来自DS18B20的输出数据在读时间片下降沿之后15uS有效,因此,在产生读时间片15uS后主机必须停止把I/0线驱动至低电平,由上拉电阻拉回至高电平,主机在15uS末期对信号线采样,如果线为高电平,为读1,如果线为低电平,为读0。读时间片的最短持续期限为60uS,各读时间片之间必须有最短为1uS的恢复时间。开始初始化P0口、P2口:P0用于数码管段选数据传送 P2用于数码管位选数据传送设置3个变量,用以存储读取的3位温度数据单片机发送指令使DS18B20开始温度转换稍作延时等待转换完成从DS1

13、8B20读取测得温度数据温度数据转换为数码管显示码数据送数码管显示图三:程序流程图程序设计clude #define uchar unsigned char#define uint unsigned intsbit DS=P22; /define interfaceuint temp; / variable of temperatureuchar flag1; / sign of the result positive or negativesbit dula=P26;sbit wela=P27;unsigned char code table=0x3f,0x#in 06,0x5b,0x4f,

14、0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;unsigned char code table1=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd, 0x87,0xff,0xef;void delay(uint count) /delay uint i; while(count) i=200; while(i0) i-; count-; /功能:串口初始化,波特率9600,方式1/void Init_Com(void) TMOD = 0x20; PCON = 0x00; SCON = 0x50; TH1 = 0xFd; TL1 = 0xFd; TR1 = 1;void dsreset(void) /send reset and initialization command 18B20复位,初始化函数 uint i; DS=0; i=103; while(i0)i-; DS=1; i=4; while(i0)i-;bit tmpreadbi

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

当前位置:首页 > 医学/心理学 > 基础医学

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