八路温度数据采集系统设计(LED显示)

八路温度数据采集系统设计(LED显示)
八路温度数据采集系统设计(LED显示)

八路温度数据采集系统设计(LED显示)

摘要

八路温度数据采集系统采用LED显示,选用8只DS18B20温度传感器总线的方式。温度采集器以89C51单片机为控制核心,由控制、显示、采集等模块组成。详细分析了该采集器各模块的功能和接口电路原理、给出了软件系统的框架和各个函数的结构。附件:源程序代码、proteus的仿真图。

关键词:温度采集;单片机应用;Proteus仿真;LED显示;89C51

目录

摘要................................................. 错误!未定义书签。

1.1 绪论............................................. 错误!未定义书签。

1.2课题研究内容 (3)

2 总体方案设计 (3)

2.1 总体方案框图 (4)

2.2 各模块的功能 (4)

2.3 整体电路图...................................... 错误!未定义书签。

4 软件系统设计 (8)

4.1编程语言及开发工具 (8)

4.2 软件系统的流程结构 (8)

4.3 程序模块设计 (9)

5 仿真及实验调试 (18)

5.1 仿真原件 (18)

5.2 仿真 (19)

参考文献 (19)

致谢 (20)

附件1 (21)

附件2 (21)

附件3 (21)

1.1 绪论

随着科技的不断进步,在工业生产中温度是常用的被控参数,而采用单片机来对这些被控参数进行控制已成为当今的主流。本文介绍了数字温度测量及自动控制系统的设计。阐述了以89C5单片机为核心的温度控制系统的工作原理和设计方法。主要组成部分:89C51单片机、温度传感器、显示电路。仿真表明,本设计对温度的显示方便、简单的特点,元器件利用率高。温度信号由温度芯片DS18B20采集,并以数字信号的方式传送给单片机。文中介绍了该控制系统的硬件部分,包括:温度检测与温度显示。单片机通过对信号进行相应处理,从而实现温度在LED上显示的目的。

1.2课题研究内容

1主要内容

能采集8路温度,并每一秒钟显示一个通道的温度。

2具体要求

用MCS-51系列单片机作为控制器;

温度可采用DS18B20,误差±1℃;

用LED显示;

用1个键可以暂停一个通道的显示;

用Proteus完成所有功能的仿真;

设计或选用5V直流稳压电源模块。

2 总体方案设计

本课题将设计一个8路温度采集&显示器,但它上面装有LED液晶屏幕显示,可以根据时间显示不同通道的环境温度,切换时间位1s,也可以根据需求通过功能按键将一个通道的显示暂停。首先采用89C51单片机为控制核心,选用DS18B20温度传感器作为8路采集模块的采集器,由于每一片DS18B20芯片有自身的系列好,可以利用

DS18B20单总线技术将8个传感器用一根总线连接一起。(单总线不同于I2C、SPI、SCI总线技术,单总线减低了IO口的开支,硬件开销少,成本低廉,便于总线的扩展和维护等有点。)由于采用单总线方式,对不同DS18B20的温度传感器有不同的序列号,因此特别设置了一个附加电路测DS18B20的序列号。

根据设计方案的分析:由于DS18B20温度传感器在启动的时候需要内部初始化,大概需要1S的时间,之后才会正确的显示各个通道的温度。

2.1 总体方案框图

八路温度采集器系统的硬件框图如图所示。

2.2 各模块的功能

温度采集器:电源模块、温度采集模块、键盘模块、信号选择模块、显示模块5个模块组成。

电源模块:选择市场上常用的5v充电电源;

温度采集模块:由单总线连8路DS18B20而成,8路DS18B20采用非寄生电源,由外部5v供电。

键盘控制模块:由一个独立按钮形成独立的按键,实现“暂停”

功能。

液晶显示模块:由4位LED、1位LED、限流电阻、三极管构成,实现对温度值的显示。

2.3 主要器件功能介绍

89C51

简介:

89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

主要特性:

DS18B20

概述:

DS1820 数字温度计提供9 位温度读数,指示器件的温度。信息经过单线接口送入DS1820 或从DS1820 送出,因此从中央处理器到

DS1820 仅需连接一条,读写和完成温度变换所需的电源可以由数据线本身提供而不需要外部电源;

因为每一个DS1820 有唯一的系列号,因此多个DS1820 可以存在于同一条单线总线上。这允许在许多不同的地方放置温度灵敏器件。此特性的应用范围包括HVAC、环境控制、建筑物、设备或机械内

的温度检测以及过程监视和控制中的温度检测。

DS18B20的主要特性

1.1、适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电

1.2、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯

1.3、DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温

1.4、DS18B20在使用中不需要任何外围元件,全部传感元件

及转换电路集成在形如一只三极管的集成电路内

1.5、温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃

1.6、可编程的分辨率为9~12位,对应的可分辨温度分别为

0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温

1.7、在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快

1.8、测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力

1.9、负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作

3.1 八路温度采集器电路图

4 软件系统设计

4.1编程语言及开发工具

本系统的处理器是兼容8051指令集的高速单片机STC89C51。为此,首选Keil μVision 作为其开发工具。Keil μVision 是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。其功能强大,生成的代码紧凑,是目前世界上使用最广泛的51系列兼容单片机开发工具。

4.2 软件系统的流程结构

温度采集器的软件主要包括温度的采集、数据的处理、LED显示、键盘管理等模块组成。其流程结构框图如下图所示:

系统经过初始化之后,过段时间采集温度传感器的值,避免温度传感器输出特性误报85读。显示一只温度传感器的温度持续1秒左右,检测时候按键按下,按下则持续显示这位温度传感器的温度。若没有按下则判断是否已经显示到最后只传感器,若是,则刷新温度值;若否则显示下一只温度传感器温度。

4.3 程序设计

/*****************************miann.c**************************************/ #include

#define uchar unsigned char

#define uint unsigned int

//外部函数引用申明

extern void tmstart(); //初始化ds18b20 extern void read_dealtemp(); //读取并处理温度

extern void showled();

sbit button=P3^0;

uint wei;

void delaym(unsigned int i)

{

char j;

for(i; i > 0; i--)

for(j = 200; j > 0; j--);

}

void main()

{

uint n,m;

tmstart(); //由于DS18B20的启动特性,所以加端程序屏蔽掉显示85度

read_dealtemp();

delaym(20000);

while(1)

{

tmstart(); //初始化

read_dealtemp(); //读取温度

for(n=0;n<8;n++) //温度传感器循环

{

button=1;

for(m=0;m<100;m++) //传感器显示扫描次数,决定显示不同温度传感器数值的时间

{

wei=n;

showled();

}

while(button==0)

{

showled();

}

}

}

}

/*****************************18b20.c***********************************/ #include

#define uchar unsigned char

#define uint unsigned int

uint temp[8]=1;

sbit ds=P3^7;

uchar lcdrom[8][8]={{0x28,0x30,0xc5,0xb8,0x00,0x00,0x00,0x8e},

{0x28,0x31,0xc5,0xb8,0x00,0x00,0x00,0xb9},

{0x28,0x32,0xc5,0xb8,0x00,0x00,0x00,0xe0},

{0x28,0x33,0xc5,0xb8,0x00,0x00,0x00,0xd7},

{0x28,0x34,0xc5,0xb8,0x00,0x00,0x00,0x52},

{0x28,0x35,0xc5,0xb8,0x00,0x00,0x00,0x65},

{0x28,0x36,0xc5,0xb8,0x00,0x00,0x00,0x3c},

{0x28,0x37,0xc5,0xb8,0x00,0x00,0x00,0x0b},

};

uint tvalue;

/****lcd程序****/

void delayms(uint ms)//延时{

uint i,j;

for(i=ms;i>0;i--)

for(j=110;j>0;j--); }

/****ds18b20程序****/ void dsrst()//ds18b20复位{

uint i;

ds=0;

i=103;

while(i>0)i--;

ds=1;

i=4;

while(i>0)i--;

}

bit dsrd0()//读一位数据{

uint i;

bit dat;

ds=0;i++;

ds=1;i++;i++;

dat=ds;

i=8;while(i>0)i--;

return(dat);

}

uchar dsrd()//读1个字节数据{

uchar i,j,dat;

dat=0;

for(i=8;i>0;i--)

{

j=dsrd0();

dat=(j<<7)|(dat>>1);

}

return(dat);

}

void dswr(uchar dat)//写数据{

uint i;

uchar j;

bit testb;

for(j=8;j>0;j--)

{

testb=dat&0x01;

dat=dat>>1;

if(testb)

{

ds=0;

i++;i++;

ds=1;

i=8;while(i>0)i--;

}

else

{

ds=0;

i=8;while(i>0)i--;

ds=1;

i++;i++;

}

}

}

void tmstart()//初始化ds18b20

{

dsrst();

delayms(1);

dswr(0xcc);

dswr(0x44);

}

void read_dealtemp()//读取并处理温度{

uchar i,j;

uchar a,b;

for(j=0;j<8;j++)

{

dsrst();

delayms(1);

dswr(0x55);

for(i=0;i<8;i++)

{

dswr(lcdrom[j][i]);//发送64位序列号

}

dswr(0xbe);

a=dsrd();

b=dsrd();

tvalue=b;

tvalue<<=8;

tvalue=tvalue|a;

temp[j]=tvalue;

delayms(50);

}

}

/*************************show.c*****************************/

#include

#define uchar unsigned char

#define uint unsigned int

extern uint wei;

extern uint temp[8];

void showled();

void shub(uint temp);

extern delaym(unsigned int i);

sbit LSA=P2^0; //管脚定义

sbit LSB=P2^1;

sbit LSC=P2^2;

sbit LSD=P2^3;

sbit LSE=P2^4;

unsigned char code Disp_Tab[] = {0x40,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf}; //段码

unsigned int LedOut[5];

/********以下将读18b20的数据送到LED数码管显示*************/

void showled()

{

int i;

LedOut[0]=Disp_Tab[wei+1];

shub(temp[wei]);

for(i=0; i<5; i++)

{

switch(i)

{

case 0:LSA=1;LSB=0;LSC=0;LSD=0;LSE=0; break;

case 1:LSA=0;LSB=1;LSC=0;LSD=0;LSE=0; break;

case 2:LSA=0;LSB=0;LSC=1;LSD=0;LSE=0; break;

case 3:LSA=0;LSB=0;LSC=0;LSD=1;LSE=0; break;

case 4:LSA=0;LSB=0;LSC=0;LSD=0;LSE=1; break;

}

P0 = LedOut[i] ;

delaym(100);

}

P0 =0xff;

}

void shub(uint temp) //温度数据处理

{

uint fl,i;

if(temp&0x8000)

{

temp=~temp;

temp+=1;

fl=0;

}

else fl=1;

i=temp*0.0625; //温度在寄存器中是12位,分辨率是0.0625

temp=i*10+0.5; //乘10表示小数点后只取1位,加0.5是四折五入

temp=temp/10;

LedOut[1]=Disp_Tab[temp%10000/1000];

LedOut[2]=Disp_Tab[temp%1000/100];

LedOut[3]=Disp_Tab[temp%100/10]; //十位

LedOut[4]=Disp_Tab[temp%10]; //个位

if(fl==0)

{

if((temp/10)==0) LedOut[3]=Disp_Tab[10];

else if(temp/100==0)LedOut[2]=Disp_Tab[10];

else if(temp/1000==0)LedOut[1]=Disp_Tab[10];

}

}

5 仿真及实验调试

5.1 仿真原件:

AT89C51(单片机)

7SEG-MPX1-CA(共阳级一位数码管)

7SEG-MPX4-CA(共阳级四位数码管)

电阻

电容

晶振

按键

DS18B20(温度传感器)

5.2 仿真

参考文献

[1] 黄惟公,邓成中,王燕.单片机原理与应用技术[M],西安-西安电子科技大学出版社,

2007.08

[2] 张毅刚.MC-51单片机应用设计(二版):哈工大出版社 2005

[3] 杨文龙.单片微机原理及应用.西安电子科技出版社

[4] 王桂敏,齐风河. 基于1-Wire总线技术的巡检系统[M],大庆师范学院学报,2007.4

[5] 周航慈.单片机程序设计基础.北京:北京航天航空大学出版社

[6] 胡汉才.单片机原理及其借口技术.北京:清华大学出版社

[7] DS18b20说明书

[8]常敏等单片机应用程序开发与实践电子工业出版社 2009;

[9]周润景等基于PROTEUS的电路及单片机系统设计与仿真北航出版社 2006.5

致谢

首先我要感谢我的指导老师邓成中老师,他为我们为我们此次设计指明方向,形成了良好的学习氛围,指导我正确的学习方法,在此谨邓老师表达深深的谢意!

在设计的进行过程中,还得到了机械工程与自动化学院其张老师、余老师等几位老师的热心指导和帮助,帮我排除了很多困难,在此表示衷心的感谢!

还要非常感谢我的同学,我们同宿舍的同班的许多好朋友,他们给了我很多帮助!

温度数据采集系统

第三章系统硬件设计 温度数据采集系统和接收显示硬件电路主要包含温度数据采集、发送、接收和显示等模块,温度数据采集采用数字式温度传感器DS18B20,数据的发送和接收采用无线数据收发模块PTR2000,整个系统采用单片机STC89C52进行各模块的协调控制,下面对各个模块进行介绍。 3.1 数字温度传感器DS18B20 3.1.1 DS18B20 的性能特点 DS18B20 是由DALLAS 半导体公司生产的单线型智能数字温度传感器,是新一代适配微处理器的智能温度传感器,广泛应用于工业、农业等领域,具有体积小、接口方便和传输距离远的特点,在一根通信线上可以挂很多个DS18B20,很方便。具有以下特点: (1)具有独特的1-Wire 接口,只需要一个端口引脚就可以进行通信; (2)具备多节点能力,能够简化分布式温度检测应用中的设计; (3)不需要外部元件; (4)可以直接从数据线供电,电源电压范围在3~5.5V; (5)在待机状态下可以不消耗电源电量; (6)测量温度范围在-55~+125℃; (7)在-10~+85℃时测量精度在±0.5℃; (8)可以用程序设定9~12 位分辨率; (9)用户可根据需要定义温度的上下限报警设置。 DS18B203 脚封装的管脚排列图如图3.1.1 所示。

图 3.1.1 DS18B20 管脚排列图 DS18B20 只有三个引脚。其中,引脚1 和3 分别是GND 和VDD,引脚2 是DQ 端,是用于数据信息的输入和输出。当给DS18B20 加电后,单片机可以通过DQ 端写入命令,并可以读出含有温度信息的数字量。在使用寄生电源情况下,可以向DS18B20 提供电源。 3.1.2 DS18B20 的内部结构 DS18B20的内部框图如图3.1.2所示。 图3.1.2 DS18B20的内部框图 DS18B20主要由64位ROM、温度传感器、非易失性温度报警触发器TH和TL及暂存器四部分组成。64位ROM存储器具有独一无二的序列号,可以看作是该DS18B20的地址系列号,是在出厂前就被光刻好的。暂存器各字节具有不同的意义,0和1字节是用于存储温度传感器数字输出的温度寄存器;2字节和3字节分别是非易失性上限报警触发寄存器(TH)和下限报警触发寄存器(TL);4字节的配置寄存器能够用来设置温度转换的精度; 5、6和7字节作为内部保留使用。DS18B20有两种供电方式,可以使用寄生电源供电,也可以使用外部电源。在使用寄生电源的时候,不用外部电源,而是在总线为高时由DQ端提供电源,同时向内部电容充电,以求在总线拉低时为DS18B20提供电量。上电后,DS18B20进入空闲状态;当MCU向DS18B20发出Convert T [44h]的命令后,DS18B20 向MCU传送转换状态,开始温度测量和A/D转换。温度数据以带符号位的补码形式存储在温度寄存器中,温度寄存器格式如图3.1.3所示。 图3.1.3 DS18B20温度寄存器格式 温度的正负值是由符号为来说明的,正为0,负为1。表3.1给出一部分数字数据与温度的对应关系。 表3.1 DS18B20温度与数据对应关系

8路温度巡回检测、报警系统

8路巡回检测、报警系统 一、摘要 随着电子技术的发展,家用电器和办公设备的智能化、系统化已成为发展趋势,而这些高性能几乎都要通过电子电路实现。同时,温度作为与我们生活息息相关的一个环境参数,对其的测量和研究也变得极为重要。本实验基于数字、模拟电子电路相关知识,实现了8路温度巡回检测、报警系统。此系统包括555时钟电路、计数与译码显示电路、拨码开关和数据选择电路、蜂鸣报警电路、电压比较电路、Pt100测温电路等模块。各模块焊接前均用Multisim软件对电路进行了仿真。8路通道中,有6路采用拨码开关实现对通道的工作状态模拟,1路采用滑动变阻器与窗口比较器实现通道的工作状态模拟,还有1路为热电阻Pt100的测温电路,且后两路通道均设置两个阈值,可检测系统工作状态是否处于正常范围之内。该系统能够对多个通道的工作状态(如温度)是否正常进行巡回检测。当某一通道出现故障(如超温)时,由巡回检测系统发出报警并显示故障的通道号,故障排除后,系统可继续进行巡回检测。

二、设计任务 2.1 设计选题 选题八:8路巡回检测、报警系统的设计与实现 2.2 设计任务要求 (1)基本要求:用十进制计数器、数据选择器、显示译码器和适当门电路设计一个8路循环检测报警器,循环检测周期不超过8秒。当某一路出现故障(如超温)时停止检测,并且发出报警和显示故障的通道号; (2)扩展要求1:电源电压模拟:要求采用滑动变阻器设计与实现2路电源电压输出的模拟。电压比较器可设定上、下限电压报警值; (3)扩展要求2:实现1路热电阻Pt100的测温电路。 三、方案设计与论证 接通电源后,555芯片在3口输出10Hz的时钟信号,在此信号的控制下,74ls160开始在0~7内循环计数,通过QA,QB,QC,QD输出BCD码到74ls47和74ls151的A,B,C端口。八路通道的电压输出值送入74LS151八路数据选择器的D0~D7端,74LS151的Y和~W互为反码形式输出,Y接74LS160的控制端ENT,~W接蜂鸣器。正常情况下,~W输出为低电平,无法驱动三极管,蜂鸣器不响。当有某一路或多路出现故障时,Y端输出为低电平,计数器74LS160停止计数,QA,QB,QC输出数据保持为出现故障时接受的二进制码,通过译码器在共阳数码管上显示的是一个不变的值,即故障通道号,~W端输出一个高电平,三极管导通,蜂鸣器响。系统方框图见图1: 图1 系统方框图 此系统全部使用硬件搭建,未使用单片机,无需编程,芯片采用了74系列,在

基于LabVIEW的温度测量及数据采集系统设计

LabVIEW技术大作业 题目:基于LabVIEW的温度测量及数据采集系统设计学院(系):信息与通信工程学院 班级:通信133 学号:xxxxxxxxx 姓名:xxxxxx

一、设计背景 LABVIEW最初就是为测试测量而设计的,因而测试测量也就是现在LABVIEW最广泛的应用领域。经过多年的发展,LABVIEW在测试测量领域获得了广泛的承认。至今,大多数主流的测试仪器、数据采集设备都拥有专门的LabVIEW驱动程序,使用LabVIEW可以非常便捷的控制这些硬件设备。同时,用户也可以十分方便地找到各种适用于测试测量领域的LabVIEW工具包。这些工具包几乎覆盖了用户所需的所有功能,用户在这些工具包的基础上再开发程序就容易多了。有时甚至于只需简单地调用几个工具包中的函数,就可以组成一个完整的测试测量应用程序。 二、系统方案 本设计的程序框图和前面板图分别是图1.1和图1.2,“温度测量及数据采集系统.vi”是一个测量温度并将测试数据输出到文件的VI。此VI中的温度是用一个20至40的随机整数来代替的,测试及采集100个温度值,每隔0.25秒测一次,共测定25秒。在数据采集过程中,VI将在前面板的波形图上实时地显示测量结果。采集过程结束后,波形图上显示出温度数据曲线,数组中显示每次的温度测量数据,并在显示控件中显示测试中温度的最大值、最小值和平均值,同时把测量的温度值以文件的形式存盘。

图1.1温度测量及数据采集程序框图 1.2温度测量及数据采集前面板图

二、系统各模块介绍 2.1循环模块 For循环用于将某段程序循环执行指定的次数, 是总数接线端,指定For循环内部代码执行的次数。如将0或负数连接至总数接线端,For循环不执行。 是计数接线端,表示完成的循环次数。第一次循环的计数为0。 本设计使用for循环将循环内的程序循环100次。

8路数据采集系统

单片机课程设计 课题名称运用8051、ADC0809设计一个8路数据采集系统院校兴湘学院 专业机械设计制造及其自动化班级3班 学生姓名曾繁宁 学号2010963036 指导教师李玉声 2013年12月29 日

1.设计内容 以pc机为控制器,采用中断方式进行8通道数据采集, 2.设计要求 要求利用ADC 0809作A/D转换器,设计相应的接口电路,画出原理图并给出采用中断方式下的数据采集程序. 3.系统总体设计步骤 第一步:信号调理电路 第二步:8路模拟信号的产生与A/D转换器 被测电压要求为0~5V的直流电压,可通过电位器调节产生。 考虑本设计的实际需要,我选择八位逐次比较式A/D转换器(ADC0809)。 第三步:发送端的数据采集与传输控制器 第四步:人机通道的接口电路 第五步:数据传输接口电路 用单片机作为控制系统的核心,处理来自ADC0809的数据。经处理后通过串口传送,由于系统功能简单,键盘仅由两个开关和一个外部中断组成,完成采样通道的选择,单片机通过接口芯片与LED数码显示器相连,驱动显示器相应同采集到的数据。 经过分析,本系统数据采集部分核心采用ADC0809,单片机系统采用8051构成的最小系统,用LED动态显示采集到的数据。数据采集与传输系统一般由信号调理电路,多路开关,采样保持电路,A/D,单片机,电平转换接口,接收端(单片机、PC或其它设备)组成。本设计没有通信部分。系统框图如下图所示。

4.硬件系统的设计 4.1信号调理 信号调理的任务:将被测对象的输出信号变换成计算机要求的输入信号。多路数据采集输入通道的结构图如下图: 图5-1-1多路数据采集输入通道结构图 注:缓慢变化的信号和直流信号,采样保持电路可以省略。 4.2 A/D转换器的选取 转换速度是指完成一次A/D转换所需时间的倒数,是一个很重要的指标。A/D 转换器型号不同,转换速度差别很大。通常,8位逐次比较式ADC的转换时间为100us左右。由于本系统的控制时间允许,可选8位逐次比较式A/D转换器。

基于单片机的温度测量系统设计(DOC)

基于STC单片机的温度测量系统的研究 摘要:本文针对现有温度测量方法线性度、灵敏度、抗振动性能较差的不足,提出了一种基于STC单片机,采用Pt1000温度传感器,通过间接测量铂热电阻阻值来实现温度测量的方案。重点介绍了,铂热电阻测量温度的原理,基于STC实现铂热电阻阻值测量,牛顿迭代法计算温度,给出了部分硬件、软件的设计方法。实验验证,该系统测量精度高,线性好,具有较强的实时性和可靠性,具有一定的工程价值。 关键词:STC单片机、Pt1000温度传感器、温度测量、铂热电阻阻值、牛顿迭代法。 Study of Temperature Measurement System based on STC single chip computer Zhang Yapeng,Wang Xiangting,Xu Enchun,Wei Maolin Abstract:A method to achieve temperature Measurement by the Indirect Measurement the resistance of platinum thermistor is proposed. It is realized by the single chip computer STC with Pt1000temperature sensor.The shortcomings of available methods whose Linearity, Sensitivity, and vibration resistance are worse are overcame by the proposed method. This paper emphasizes on the following aspects:the principle of temperature measurement by using platinum thermistor , the measurement of platinum thermistor’s resistance based on STC single chip computer, the calculating temperature by Newton Iteration Method. Parts of hardware and software are given. The experimental results demonstrate that the precision and linearity of the method is superior. It is also superior in real-time character and reliability and has a certain value in engineering application. Keywords: STC single chip computer,Pt1000temperature sensor,platinum thermistor’s resistance,Newton Iteration Method 0 引言 精密化学、生物医药、精细化工、精密仪器等领域对温度控制精度的要求极高,而温度控制的核心正是温度测量。 目前在国内,应用最广泛的测温方法有热电偶测温、集成式温度传感器、热敏电阻测温、铂热电阻测温四种方法。 (1) 热电偶的温度测量范围较广,结构简单,但是它的电动势小,灵敏度较差,误差较大,实际使用时必须加冷端补偿,使用不方便。 (2) 集成式温度传感器是新一代的温度传感器,具有体积小、重量轻、线性度好、性能稳定等优点,适于远距离测量和传输。但由于价格相对较为昂贵,在国内测温领域的应用还不是很广泛。 (3) 热敏电阻具有灵敏度高、功耗低、价格低廉等优点,但其阻值与温度变化成非线性关系,在测量精度较高的场合必须进行非线性处理,给计算带来不便,此外元件的稳定性以及互换性较差,从而使它的应用范围较小。 (4)铂热电阻具有输出电势大、线性度好、灵敏度高、抗振性能好等优点。虽然它 的价格相对于热敏电阻要高一些,但它的综合性能指标确是最好的。而且它在0~200°C范

基于labview温度数据采集文献综述

基于LabVIEW温度数据采集文献综述 摘要:本课题介绍了虚拟仪器概况及其发展背景;通过对虚拟仪器的学习和研究,运用软件工具,实现温度显示系统的模拟。实现系统软件设计思路是:利用LabVIEW中的各种控件,实现温度数据采集显示。利用虚拟仪器的优越性实现了基于操作系统下的交通终端服务系统的展示部分。 关键字:labVIEW,温度,数据采集 引言 美国国家仪器公司推出的LabVIEW不仅是一个图形化编程语言,而且是一个广泛应用于虚拟测控系统的虚拟仪器平台,它与数据采集卡一起构成虚拟测试仪器,其测试系统的构建可以通过图形化的语言描述,组态容易,设计简单,广泛应用于测量与控制[2] 。 LabVIEW是虚拟仪器领域中最具有代表性的图形化编程开发平台[1] ,是目前国际上首推并应用最广的数据采集和控制开发环境之一,主要应用于仪器控制、数据采集、数据分析、数据显示等领域,并适用于多种不同的操作系统平台。与传统程序语言不同,LabVIEW采用强大的图形化语言(G 语言)编程,面向测试工程师而非专业程序员,编程非常方便,人机交互界面直观友好,具有强大的数据可视化分析和仪器控制能力等特点。使用LabVIEW 开发环境,用户可以创建32位的编译程序,从而为常规的数据采集、测试、测量等任务提供了更快的运行速度。LabVIEW是真正的编译器,用户可以创建独立的可执行文件,且该文件能够脱离开发环境而单独运行[4] 。 1.1虚拟仪器的优势 1.经济实惠 2.方便适用 3.提高测试效果 4.开放且灵活 远程虚拟仪器的优势在于不受地域限制,功能可由用户自己定义,且构建容易,所以使用面极为广泛,是科研、开发、测量、检测、计量、测控等领域不可多得的好工具,更值得一提的是它可应用在高危险的区域进行在线的数据采集和检测[5]。使测量人员的工作不但摆脱了地理位置和条件的限制,还可以通过Intcrnet把所采集到的数据自动地转送到另一台计算机进行评估[8]。 1.2 VI及相关知识 使用LabVIEW开发平台编制的程序称为虚拟仪器程序,简称为VI。VI包括三个部分:程序前面板、框图程序和图标/ 连接器。程序前面板用于设置输入数值和观察输出量,用于模拟真实仪表的前面板。在程序前面板上,输入量被称为控制(Controls),输出量被称为显示(Indicators)。控制和显示是以各种图标形

基于labview温度监测系统

课题基于labview的温度监测系统班级 12电信 学号 201210350120 姓名邹临昌 时间 2015.12 .12-2016.1.12 景德镇陶瓷学院

摘要:本课题介绍了虚拟仪器概况及其发展背景;通过对虚拟仪器的学习和研究,运用软件工具,实现温度显示系统的模拟。实现系统软件设计思路是:利用LabVIEW中的各种控件,实现温度数据采集显示。利用虚拟仪器的优越性实现了基于操作系统下的交通终端服务系统的展示部分。 关键字:labVIEW,温度,数据采集 引言 美国国家仪器公司推出的LabVIEW不仅是一个图形化编程语言,而且是一个广泛应用于虚拟测控系统的虚拟仪器平台,它与数据采集卡一起构成虚拟测试仪器,其测试系统的构建可以通过图形化的语言描述,组态容易,设计简单,广泛应用于测量与控制。 LabVIEW是虚拟仪器领域中最具有代表性的图形化编程开发平台[1] ,是目前国际上首推并应用最广的数据采集和控制开发环境之一,主要应用于仪器控制、数据采集、数据分析、数据显示等领域,并适用于多种不同的操作系统平台。与传统程序语言不同,LabVIEW采用强大的图形化语言(G 语言)编程,面向测试工程师而非专业程序员,编程非常方便,人机交互界面直观友好,具有强大的数据可视化分析和仪器控制能力等特点。使用LabVIEW 开发环境,用户可以创建32位的编译程序,从而为常规的数据采集、测试、测量等任务提供了更快的运行速度。LabVIEW是真正的编译器,用户可以创建独立的可执行文件,且该文件能够脱离开发环境而单独运行。

1.1虚拟仪器的优势 1.经济实惠 2.方便适用 3.提高测试效果 4.开放且灵活 远程虚拟仪器的优势在于不受地域限制,功能可由用户自己定义,且构建容易,所以使用面极为广泛,是科研、开发、测量、检测、计量、测控等领域不可多得的好工具,更值得一提的是它可应用在高危险的区域进行在线的数据采集和检测[5]。使测量人员的工作不但摆脱了地理位置和条件的限制,还可以通过Intcrnet把所采集到的数据自动地转送到另一台计算机进行评估。

8路温度采集监控系统

目录 一、课程设计目的.................................................................................................................... - 1 - 二、课程设计题目及任务要求................................................................................................ - 1 - 1. 题目.............................................................................................................................. - 1 - 2. 任务要求...................................................................................................................... - 1 - 3. 设计流程图.................................................................................................................. - 1 - 三、电路分析............................................................................................................................ - 2 - 1.运用Proteus软件画出电路图如下.......................................................................... - 2 - 2.发送端电路设计分析.................................................................................................. - 3 - 3.接收端电路分析.......................................................................................................... - 4 - 4.键盘电路设计.............................................................................................................. - 5 - 四、程序分析............................................................................................................................ - 6 - 1.发送端程序.................................................................................................................. - 6 - 2.接收端程序................................................................................................................ - 19 - 五、硬件电路介绍.................................................................................................................. - 22 - 1. RS-232串口通信总线及其接口............................................................................... - 22 - 2. MAX232芯片............................................................................................................... - 23 - 3. 74LS245芯片............................................................................................................. - 24 - 4. DS18B20温度传感器................................................................................................. - 25 - 六、在课程设计过程中遇到的问题........................................................... 错误!未定义书签。 1.使用Protues软件画图时问题................................................. 错误!未定义书签。 2.程序编写遇到问题..................................................................... 错误!未定义书签。 七、总结....................................................................................................... 错误!未定义书签。

温度检测显示系统设计

毕业设计 设计题目温度监测显示系统设计 系部信息工程系 专业电子信息工程 班级电子0601 学号063001020001 姓名宋天诗 指导老师王珊珊 温度检测显示系统 一、设计要求 1.以传感器,单片机,数码管等元器件,设计一个温度检测系统,并通过显示器件,显示出温度数据。 2.熟练应用protel99,运用protel99设计温度检测显示系统。

3.理解温度检测系统的原理。 二、总体概要设计 本系统是以温度传感器、数码管和单片机为核心元器件建立起来的温度检测显示系统。通过对单片机和传感器的研究,通过A/D转换器的应用,使本系统实现了温度信号到模拟信号再到数字信号的转换。设计中还使用了译码器74LS47、数码管、稳压管等元器件。 温 度 传感器 单片机数码管采集后 的数据 处理后 的数据 检测 温度 图1 系统总体框图 本设计主要包含温度检测和显示电路两个部分。 1.温度检测部分 主要由温度传感器、运算放大器和A/D转换器三部分组成。 温度传感器LM134产生的输入信号由运算放大器ICL7650后,A/D转换器MC14433将运算放大器输出的模拟信号转换成数字信号输入80C51单片机,由于MC14433 的 A/D转换结果是动态分时输出的BCD码,Q0~Q3和DS1~DS4 都不是总线式的。因此,MCS-51 单片机只能通过并行I/O 接口或扩展I/O 接口与其相连。 温度信号检测通道的总增益是由温度传感器、运放和A/D转换器三个环节的增益 做决定。在本设计中,前两个环节的增益是固定的,只用电位器 r W作为整个输入通道的增益环节。这样有利于整个设计的调试。 2.显示电路 本设计采用动态扫描输入法,由单片机8051输出数码管段选信号,经译码器驱动器芯片74LS47驱动后数码管发光显示。 三、各单元模块设计与分析 1.温度传感器 传感器是一种检测装置,能感受到被测量的信息,并能将检测感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、 显示、记录和控制等要求。它是实现自动检测和自动控制的首要环节。 LM134是一种新型的硅集成温度传感器,它不同于一般诸如热敏电阻、温差电偶以及半导体PN结等传统的温度传感器。它是根据下述原理设计而成的,即工作在不同电流密度下的两只相同晶体管,其基、射结的结电压之差△V_(be)与绝对温度T严格成正比。因而该器件的突出优点是在整个工作温区范围内(-55℃~+125℃)输出电流几乎与被测温度成线性关系,这样,就可省去非线性校正网络,使用简便。此外,它还具有下列特点: (1)起始电压低(低于1.5V),而器件耐压较高,因而电源电压适用范围宽(在3~40V之间)。 (2)灵敏度高(1μA/K),输出信号幅度大。一般情况下,不必加中间放大就可直接驱动检测系统,例如双积分型A/D转换器5G14433或ICL7106等。从而消除了中间环节所引入

温度数据采集系统

第三章 系统硬件设计温度数据采集系统和接收显示硬件电路主要包含温度数据采集、发送、接收和显示等模块,温度数据采集采用数字式温度传感器 DS18B20,数据的发送和接收采用无线数据收 发模块PTR2000,整个系统采用单片机STC89C52进行各模块的协调控制,下面对各个模块进行介绍。 3.1 数字温度传感器DS18B20 3.1.1 DS18B20 的性能特点 DS18B20 是由 DALLAS 半导体公司生产的单线型智能数字温度传感器,是新一代适配微处理器的智能温度传感器,广泛应用于工业、农业等领域,具有体积小、接口方便和传输距离远的特点,在一根通信线上可以挂很多个 DS18B20,很方便。具有以下特点:(1)具有独特的 1-Wire 接口,只需要一个端口引脚就可以进行通信;(2)具备多节点能力,能够简化分布式温度检测应用中的设计;(3)不需要外部元件; (4)可以直接从数据线供电,电源电压范围在 3~5.5V ;(5)在待机状态下可以不消耗电源电量;(6)测量温度范围在-55~+125℃;(7)在-10~+85℃时测量精度在±0.5℃;(8)可以用程序设定 9~12 位分辨率;(9)用户可根据需要定义温度的上下限报警设置。DS18B203 脚封装的管脚排列图如图 3.1.1 所示。、管路敷设技术通过管线敷设技术不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。、电气课件中调试对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。 、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

课程设计八路温度巡回检测系统

《单片机原理及应用》课程设计总结报告 题目: 八路温度巡回检测系统 设计人姓名: XXX 院系: XXXXX学院 专业: XXXXX 学号:X X X X X 指导教师:X X X 日期:201X-XX-XX

内容摘要 摘要:MCS-51是一种带8K字节闪烁可编程可檫除只读存储器的低电压,高性能COMOS8的微处理器,俗称单片机。利用单片机与AD转换器设计的八路温度巡回检测系统,可对某粮库或冷冻厂八点(八个冷冻室或八个粮仓)进行温度巡回检测。能够测量-30~+50o C的温度范围,检测精度不大于±1o C。并采用数码管显示测量值。 关键词:MCS-51、温度、巡回检测、

目录 1 设计任务 (3) 1.1引言 (3) 1.2设计题目 (3) 1.3设计目的 (3) 2 总体方案设计与论证 (3) 2.1总体方案设计与论证 (3) 2.2温度采集、计算方案设计与论证 (4) 3 硬件设计 (4) 3.1STC89C52简介 (4) 3.2DS18B20简介 (8) 3.3晶振 (9) 3.4LED显示电路电路及实物图 (9) 4 软件设计 (12) 4.1设计总框图 (12) 4.2自动巡检流程图 (13) 5 系统调试 (13) 6 总结和个人体会 (14) 附录一:设计电路图 (16) 附录二:元件清单 (16)

附录三:源程序 (17) 1、设计任务 1.1引言 温度测量与控制在工业、农业、国防等行业有着广泛的应用。利用单片机技术的温度测控仪有着体积小、可靠性高、价格便宜等优点而被广泛应用。 1.2设计题目 八路温度巡回检测装置 1.3设计目的 运用所学单片机原理知识,设计和调试小产品,从而了解产品设计开发的一些基本流程,并且加深对单片机知识的理解。 2、总体方案设计与论证 2.1总体方案设计与论证 本次课程设计的要求是8路温度巡显仪,要正常显示、进行参数设置等多个工作状态故系统工作的标志位是程序工作的主要的线索,每个功能模块在判断后系统的标志位再去执行相应的功能。见如下的框图所示。 1号键 为2 2号键 F0=1 为1 F0=0 图2.1 系统软件设计的整体思路框图 系统的标志位 判 断 按下了F 键 参数设定态 进入冻结态 正常巡显态 设置节拍 设置报警限值 显示温度态

8通道温度数据采集系统

8通道温度数据采集系统 一、设计题目与要求: 设计一个8通道温度数据采集系统,系统误差小于1%;其中4路测量范围0-200?C ,选用Pt100热电阻;另4路测量范围0-600?C ,选用K 分度热电偶。 二、设计过程: 1、画出系统组成框图; 2、完成硬、软件功能分配和完成芯片选型; (1)运算放大器采用单电源,低功耗,精密四运算放大器MAX479 (2)AD 转换芯片采用带有8位A/D 转换器、8路多路开关的ADC0809 (3)硬件主要的功能是把采集到的温度信号转换成电信号,再经过运算放大器放大信号,传递给AD 转换芯片把模拟信号转换成数字信号,最后传给单片机处理信号并显示温度。 (4)软件主要的功能是对ADC0809 AD 转换芯片控制读取数据,读到单片机里对数据的处理转换成对应的温度值并显示。 3、ADC0809原理和应用: ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D 转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D 转换器进行转换。三态输出锁器用于锁存A/D 转换完的数字量,当OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。 ADC0809引脚图 IN0-IN7:8条模拟量输入通道 ADC0809对输入模拟量要求:信号单极性,电压 范围是0-5V ,若信号太小,必须进行放大;输 入的模拟量在转换过程中应该保持不变,如若模 拟量变化太快,则需在输入前增加采样保持电路。 地址输入和控制线:4条 ALE 为地址锁存允许输入线,高电平有效。当ALE 线为高电平时,地址锁存与译码器将A ,B ,C 三条地址线的地址信号进行锁存,经译码后被选 中的通道的模拟量进转换器进行转换。A ,B 和C 为地址输入线,用于选通IN0-IN7上的一路模 拟量输入。 数字量输出及控制线:11条 ST 为转换启动信号。当ST 上跳沿时,所有内部

8路温度采集系统

实习报告 课题:八路温度采集仪 日期:2015.8.3

目录: 一、实验目的 (3) 二、实验内容 (3) 三、实验步骤与结果 (3) 四、实验存在的问题 (14) 五、总结 (14) 六、附录(上位机、下位机) (14)

一、实验目的: 1、DXP与Labview软件的运用; 2、单片机编程的掌握; 3硬件的焊接与调试; 4、熟练运用和掌握原理图设计、PCB板的制作、元器件焊接与调试、虚拟仪器的使用。 二、实验内容: 运用单片机搭建一个小系统。此系统可以同时采集8路温度信息(由于硬件条件的限制,没人只有4个温度传感器,所以最后只能为四路温度采集),而此信息来自与8个DS18B20,同时循环显示于数码管。然后后期运用虚拟仪器Labview采集单片机所发送的温度信息进行处理,并形成完整的虚拟仪器。 三、实验步骤与结果: 1、原理图的设计 采集系统主要元器件介绍: STC89C52RC: STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89X52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选. 其I/O口、中断的运用可以参照89C51的任何类型。 DS18B20: DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有

温度检测显示及报警装置设计与制作

目录 第一章绪论 (1) 1.1课题背景与意义 (1) 1.2设计题目介绍 (1) 1.3设计目的 (1) 1.4设计内容和要求 (1) 第2章设计原理 (3) 2.1系统总体框架设计 (3) 2.2系统硬件设计 (3) 2.2.1温度传感器DS18B20电路 (3) 2.2.2蜂鸣器报警电路 (4) 2.2.31602液晶显示显示电路 (5) 2.2.4复位电路 (5) 2.3系统软件设计 (6) 第3章系统调试及结果分析 (8) 3.1硬件调试 (8) 3.2软件调试 (8) 3.3结果分析 (9) 参考文献 (10) 附录 (11) 附录一系统原理图 (11)

第一章绪论 1.1课题背景与意义 温度是一个基本的物理量,在工业生产和实验研究中,如机械、食品、化工、电力、石油、等领域,温度常常是表征对象和过程状态的重要参数,是各门学科研究中经常遇到和必须测量的物理量。本质上讲,温度就是衡量物体冷热程度的物理量,是物体分子热运动平均动能的标准。它是国际单位制规定的七个基本单位之一。温度概念的建立以及温度的测量都是以热平衡为基础的,当两个冷热程度不同的物体接触后就会产生导热换热,换热结束后,两物体处于热平衡状态,此时它们具有相同的温度,这就是温度最基本的性质。因此对温度进行准确测量和有效控制已成为人们在科学研究和生产实践中面临的重要课题之一。 1.2设计题目介绍 设计并开发能自动测温并具有显示和报警系统的温度测量控制系统,要求以18b20做为温度测量传感器,以数码管、点阵、1602、全彩TFT屏做为温度等信息显示装置,以蜂鸣器为报警装置,能实现实时温度显示、温度上下限设定、温度上下限报警等功能。 1.3设计目的 测控系统技术是自动控制理论和微型计算机原理和接口等技术在工业生产过程中实现自主测量自动控制的专门技术,其以自动控制理论为基础,以电子技术、传感器原理、计算机原理及接口等课程内容为辅助,通过对测控系统的设计实践环节培养学生理论应用能力、总结归纳能力以及自我学习能力,从而进一步提高学生工程实践能力和创新意识的培养。 1.4设计内容和要求 (1)单片机开发仪提供的18B20温度传感器做为温度采集传感器。对温度进行实时采集。 (2)本组(第三组)使用1602液晶屏做为信息显示装置。

单片机温度采集程序

单片机温度采集程序 用一片DS18B20 构成测温系统,测量的温度精度达到度,测量的温度的范围在-20 度到+100 度之间,用8 位数码管显示出来。 由于DS18B20 是在一根I/O 线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20 有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。 DS18B20 的读时序 对于DS18B20 的读时序分为读0 时序和读 1 时序两个过程。 对于DS18B20 的读时隙是从主机把单总线拉低之后,在15 秒之内就得释放单总线,以让DS18B20 把数据传输到单总线上。DS18B20 在完成一个读时序过程,至少需要60us 才能完成。 对于DS18B20 的写时序仍然分为写0 时序和写 1 时序两个过程。 对于DS18B20 写0 时序和写 1 时序的要求不同,当要写0 时序时,单总线要被拉低至少60us ,保证DS18B20 能够在15us 到45us 之间能够正确地采样IO 总线上的“0 ”电平,当要写1 时序时,单总线被拉低之后,在15us 之内就得释放单总线。

本程序实现温度的采集并且实时在数码管上显示出来。 具体程序如下: /*----------------------------------------------- 名称:18B20温度传感器 日期: 修改:无 内容:18B20单线温度检测的应用样例程序,请将18b20插紧, 然后在数码管可以显示,C表示摄氏度,如显示表示当前温度度 ------------------------------------------------*/ #include<> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include<> #include<> #define uchar unsigned char #define uint unsigned int; // /* 定义端口*/ // sbit seg1=P2^0; sbit seg2=P2^1; sbit seg3=P2^2; sbit DQ=P1^3;//ds18b20 端口 sfr dataled=0x80;//显示数据端口 // /* 全局变量*/ // uint temp; uchar flag_get,count,num,minute,second; uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //7段数码管段码表共阳 uchar str[6]; // /* 函数声明*/ // void delay1(uchar MS); unsigned int ReadTemperature(void); void Init_DS18B20(void); unsigned char ReadOneChar(void); void WriteOneChar(unsigned char dat); void delay(unsigned int i); // /* 主函数*/

相关文档
最新文档