当前位置:文档之家› 多路温度采集和显示系统设计与实现

多路温度采集和显示系统设计与实现

多路温度采集和显示系统设计与实现
多路温度采集和显示系统设计与实现

目录

1、课程设计的题目与要求 (2)

1.1课程设计题目 (2)

1.2课程设计任务与要求 (2)

2、课程设计实现的方案 (2)

3、模块功能 (2)

3.1 温度监控 (2)

3.2 显示模块 (2)

3.3 报警电路 (2)

3.4 无线传送模块 (3)

4、温度监控的实现 (3)

4.1 DS18B20简介 (3)

4.2电路设计 (3)

5、显示模块的实现 (4)

5.1字符型液晶显示模块 (4)

5.2字符型液晶显示模块引脚 (5)

5.3字符型液晶显示模块内部结构 (5)

6、无线传送模块的实现 (6)

6.1无线发送电路 (6)

6.2无线接收模块 (6)

7、程序设计流程图 (7)

8、课程设计体会 (8)

9、参考文献 (8)

附录1:程序 (9)

附录2:实物图 (12)

小型多路温湿度采集系统

1、课程设计的题目与要求

1.1课程设计题目

课程设计的题目是小型多路温湿度采集系统。用于测量掌握多点的温湿度信息。

1.2课程设计任务与要求

设计任务:

设计并制作一个至少2路的温度采集系统。

设计要求:

(1) 测温范围0~100℃;

(2) 测温精度±2℃;

(3) LED数码管显示,显示方式为点测与巡测(多点测);

(4) +5V,±15V外部电源供电;

(5) 用1个按键用于显示摄氏度或华氏度切换

(6) 设计报警电路,当温度高于一定的温度时就报警;

(7) 测温点与控制显示部分拉长距离,即无线测温。遥测距离100m。

(8) 增加湿度的测量

2、课程设计实现的方案

采用数字温度传感器DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线性度较好。在0~100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计

DS1820和微控制器AT89S52构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大,且由于AT89S52可以带多个DS18B20,因此可以非常容易实现多点测量。轻松的组建传感器网络。采用温度芯片DS18B20测量温度,可以体现系统芯片化这个趋势。部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。

用无线遥控PT2272L4和PT2262实现数据的接受与传送。使用于各种工业遥控,遥测,防盗报警器信号接收,各种家用电器的遥控等。天线用软导线或其它硬质金属(如拉杆天线),长度为250mm,不能过长也不能过短,否则会影响接收距离。若使用软导线,请拉直悬空使用,并尽量不要靠近金属物体。应尽量避免电磁干扰和金属屏蔽。

采用AT89S52八位单片机实现。单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制。而且体积小,硬件实现简单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC机通信。另外AT89C51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。

3、模块功能

本课题所设计的外围电路包括:温度监控、显示模块、报警电路、无线传送模块等电路。下面将依次对各个模块进行说明。

3.1 温度监控:对温室进行测量,通过温度传感器DS18B20将温度值转换为数字量输出。

3.2 显示模块:用LCD1602立即显示摄氏温度和华氏温度。

3.3 报警电路:当温度越限时报警,对于多路可以知道是哪一路出现温度越限。

3.4 无线传送模块:按键实现两地不同温度值显示的转换,按键值由无线传送,接收到以后实现LCD1602的显示变换。

4、温度监控的实现

4.1 DS18B20简介

温度芯片DS18B20是Dallas公司生产的一线式数字温度传感器,具有3引脚,小体积封装形式。测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出。测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±0.5℃。其工作电源既可在远端引入,也可采用寄生电源方式产生。CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。由于每一个DS18B20都有唯一系列号,因此多个DS18B20可以存在同一条单总线上。这允许许多不同地方放置温度灵敏器件。此特性的应用范围包括环境控制,建筑物、设备或机械内的温度检测,以及过程监控和控制中的温度检测等。

DS18B20有4个主要的数据部件:

(1) 64位激光ROM。64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H)组成。

(2) 温度灵敏元件。

(3) 非易失性温度报警触发器TH和TL。可通过软件写入用户报警上下限值。

(4) 配置寄存器。配置寄存器为高速暂存存储器中的第五个字节。其中R0、R1:温度计分辨率设置位,其对应四种分辨率如下表所列,出厂时R0、R1置为缺省值:R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率。

R0 R1 分辨率/bit 最大转换时间/us

0 0 9 93.75

0 1 10 187.5

1 0 11 375

1 1 1

2 750

表 1 分辨率关系表

高速暂存存储器由9个字节组成,其分配如表1所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表2所示。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。

温度LSB 温度MSB TH TL 保留保留计数寄存器计数寄存器8位CRC

表2 DS18B20存储器

4.2电路设计

本系统为多点温度测试。DS18B20采用外部供电方式,理论上可以在一根数据总线上挂256个DS18B20,但时间应用中发现,如果挂接25个以上的DS18B20仍旧

有可能产生功耗问题。另外单总线长度也不宜超过80m,否则也会影响到数据的传输。在这种情况下我们可以采用分组的方式,用单片机的多个I/O来驱动多路

DS18B20。在实际应用中还可以使用一个MOSFET将I/O口线直接和电源相连,起到上拉的作用,电路如图1。在一线制总线上串接多个DS18B20 器件时,需要先发送

跳过ROM 指令,将所有传感器都进行一次温度转换,之后通过匹配ROM依次读取每个传感器的温度数据,实现对单I/O 口上的多个DS18B20 器件的操作。

在系统安装及工作之前应将主机逐个与DS1820挂接,以读出其序列号。其工作过程为:主机发出一个脉冲,待“0”电平大于480μs后,复位DS1820,在DS1820所发响应脉冲由主机接收后,主机再发读ROM命令代码33H,然后发一个脉冲(15μs),并接着读取DS1820序列号的一位。用同样方法读取序列号的56位。另外,由于

DS1820单线通信功能是分时完成的,遵循严格的时隙概念,系统对DS1820和各种操作必须按协议进行,即:初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。

图1 单总线原理图

对DS18B20的设计,需要注意以下问题:

(1)对硬件结构简单的单线数字温度传感器DS18B20 进行操作,需要用较为复杂的程序完成。编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写。尤其在使用DS18B20 的高测温分辨力时,对时序及电气特性参数要求更高。

(2)有多个测温点时,应考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号和自动排序,以减少调试和维护工作量。

(3)测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC 和地线,屏蔽层在源端单点接地。DS18B20 在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND接在一起,焊接牢固。若VCC脱开未接,传感器只送85℃的温度值。

(4)实际应用时,要注意单线的驱动能力,不能挂接过多的DS18B20,同时还应注意最远接线距离。另外还应根据实际情况选择其接线拓扑结构。

5、显示模块的实现

5.1字符型液晶显示模块

图2 液晶面板

字符型液晶显示模块是一类专门用于显示字母,数字,符号等的点阵式液晶显示模块。在显示器件上的电极图型设计,它是由若干个5*7或5*11等点阵符位组成。每一个点阵字符位都可以显示一个字符。点阵字符位之间有一空点距的间隔起到了字符间距和行距的作用。

5.2字符型液晶显示模块引脚

VSS为地电源,VDD接5V正电源,VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS 为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。

DB0~DB7为8位双向数据线,BLK和BLA是背光灯电源。模块引脚如表3。

编号符号引脚说明编号符号引脚说明

1 VSS 电源地9 D

2 Data I/O

2 VDD 电源正极10 D

3 Data I/O

3 VL 液晶显示偏压信号11 D

4 Data I/O

4 RS 数据/命令12 D

5 Data I/O

5 R/W 读/写13 D

6 Data I/O

6 E 使能信号14 D

7 Data I/O

7 D0 Data I/O 45 BLA 背光源正级

8 D1 Data I/O 16 BLK 背光源负级

表3 字符型液晶显示模块引脚

5.3字符型液晶显示模块内部结构

液晶显示模块WM-C1602N的内部结构如图3分为三部份:一为LCD控制器,二为LCD驱动器,三为LCD显示装置。

图3 LCD1602内部结构

图4 液晶接口

6、无线传送模块的实现

6.1无线发送电路

图5 PT2262发射原理图

PT2262的发射原理如上图5所示,采用8位地址码和4位数据码的格式。PT2262的第1~8引脚设置地址为“00000000”,及1~8脚都接地。第10~13引脚为数据输入端,这四个引脚分别与单片机AT89S51的P2.0~P2.3口相连。要发送的数据通过单片机AT89S51的P2.0~P2.3口写入PT2262的数据输入管脚10~13。由于第14脚接地,所以编码启动端一直有效,当PT2262的管脚10~13有输入(有一个为“1”即有编码发出),则输入的4位数据再经过第17脚串行输出通过天线发送出去。

6.2无线接收模块

无线接收模块电路图,PT2272的接收原理如上图6所示,由于PT2262采用8位地址码和4 位数据码的格式,所以PT2272也要采用同样的格式。PT2272要与PT2262的地址相匹配才能进行传输,所以PT2272的地址引脚1~8也要设置为“00000000”,及都接地。数据出端10~13引脚与单片机AT89S51的P1.0~P1.3口相连。接收到的数据再通过单片机的外围接口P1.0~P1.3读入到单片机内部进行处理。第17脚连接到单片机的P3.2(INT0)的外中断0的输入端,同时接一个发光二极

管来确定解码有没有效。当解码有效时17脚输出瞬间的高电平同时使单片机产生中断来读取数据和二极管瞬间发光。每解码有效一次,发光二极管的闪烁一次。

图6 PT2262接收原理图

7、程序设计流程图

整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了。从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是执行软件(子程序),它是用来完成各种实质性的功能如测量、计算、显示、通讯等。每一个执行软件也就是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。各执行模块规划好后,就可以规划监控程序了。

图7 发射流程图图8 接收流程图

图9 温度检测流程图图10 报警流程图

8、课程设计体会

课程设计结束了,对于我来说收获真的不少。运用单片机板子制作实物,这个我一看就被吸引了的课题,让我下定决心一定要好好学好做好这一次的课程设计。老师给了我们课程设计的任务。一开始进度有点慢,几乎什么都不知道。于是我开始上网阅读更多关于这方面的资料,在脑中形成较为体系的知识结构。我还在课后的时间去了一下新街口的华龙电子城,接触事物的过程中让我懂得了更多,我买了芯片,回来一点一滴地摸索,发现当有实物的时候学东西真的好快。原本什么都不会,经过不断地尝试,我居然可以用板子实现很多很多的功能,并会自己扩展一些功能。看着自己做出来的成就,想想自己每天熬夜看书在自己电脑上改来改去,想想在设计过程中每一次面对困难又解决的快乐……不管会是怎么样的结果,至少自己真正努力过,就不会有遗憾,我一直抱着这样的信念坚持到最后一刻。课程设计结束了,回想起来,自己的收获真的不少,努力总会有收获,这是永远都不变的道理。想想这一次的课程设计,自己也会多一点今后学习上的经验和方法。设计结束了,我发现我对板子更有兴趣了,我也会好好努力把一些我还不是很了解的细节做好。这次做出来的系统还是一个不完善的系统,还有许多需要改进的地方。我会继续不断地摸索。

9、参考文献

[1] 马宗梅,籍顺心,张凯,马岩,单片机的C语言应用程序设计,北京:北京航空航天大学出版社,2007。

[2] 付晓光,单片机原理与实用技术,北京:清华大学出版社,2004.1

[3] 谭浩强,C语言设计,北京:清华大学出版社,1999。

[4] 丁镇生,传感器及传感技术应用,电子工业出版社,1998.8。

[5] 黄俊钦,新型传感器原理,航空工业出版社,1991。

[6] 夏路易,电路原理图与电路板设计教程Protel 99 SE,北京:北京希望电子出版社,2002.6。

[7] 李广弟,朱月秀,王秀山.单片机基础.北京:北京航空航天大学出版社,2006。

[8] 马共立.MCS-51单片机实用子程序.哈尔滨:哈尔滨工业大学出版社,1989。

附录1:程序

发射部分程序:

#include

void main()

{

while(1)

{ if(P3==0xff)

P1=0xf0;

if(P3==0x7f)

P1=0xf1;

}

}

接收与温度显示控制程序:

1602-Temp.c

#include

#include

#define uchar unsigned char

#define uint unsigned int

sbit D18B20=P3^7; // 18b20的引脚定义

sbit BZ=P1^5; // 蜂鸣器的引脚定义

sbit rs=P2^6; // 1602引脚定义

sbit rw=P2^5;

sbit e=P2^7;

#define NOP() _nop_() /* 定义空指令 */

#define _Nop() _nop_() /*定义空指令*/

void TempDelay (uchar us); //18b20的函数声明

void Init18b20 (void);

void WriteByte (uchar wr); //单字节写入

void read_bytes (uchar j);

uchar CRC (uchar j);

void GemTemp ();

void TemperatuerResult(uchar z);

void delay(uchar a); //1602分函数声明

void lcd_mang();

void write_lcd1602(uchar cmd,uchar i);

void ini_lcd1602();

bit flag;

uint Temperature; //用来存放读出温度后的值

uchar temp_buff[9]; //存储读取的字节,read scratchpad为9字节,read

//rom ID为8字节

uchar *p,TIM;

uchar code str1[]={0x28,0xFF,0xC3,0x93,0x03,0x00,0x00,0xA9};//ROM 1 uchar code str2[]={0x28,0xC2,0x31,0xCB,0x03,0x00,0x00,0xEF};//ROM2 //延时处理

void TempDelay (uchar us)

{while(us--);}

//18B20初始化

void Init18b20 (void)

{ D18B20=1;

_nop_();

D18B20=0;

TempDelay(80); //delay 530 uS//80

_nop_();

D18B20=1;

TempDelay(14); //delay 100 uS//14

_nop_();

_nop_();

_nop_();

if(D18B20==0)

flag = 1; //detect 1820 success!

Else

flag = 0; //detect 1820 fail!

TempDelay(20); //20

_nop_();

_nop_();

D18B20 = 1;

}

//向18B20写入一个字节

void WriteByte (uchar wr) //单字节写入

{ unsigned char idata i;

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

{

D18B20 = 0;

_nop_();

D18B20=wr&0x01;

TempDelay(3); //delay 45 uS //5

_nop_();

_nop_();

D18B20=1;

wr >>= 1;

}

}

//读18B20的一个字节

unsigned char ReadByte (void) //读取单字节{ unsigned char idata i,u=0;

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

{

D18B20 = 0;

u >>= 1;

if(D18B20==1)

u |= 0x80;

TempDelay (2);

_nop_();

}

return(u);

}

//读18B20

void read_bytes (uchar j)

{

unsigned char idata i;

for(i=0;i

{

*p = ReadByte();

p++;

}

}

//匹配ROM

void Matchrom(uchar a)

{

char j;

WriteByte(0x55); //发送匹配ROM命令

if(a==1)

{

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

WriteByte(str1[j]); //发送18B20的序列号,先发送低字节}

if(a==2)

{

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

WriteByte(str2[j]); //发送18B20的序列号,先发送低字节}

}

//读取温度

void GemTemp ()

{

Temperature = temp_buff[1]*0x100 + temp_buff[0];

Temperature *= 0.625;

Temperature += 0.5; //四舍五入

// Temperature /= 16;

TempDelay(1);

}

//18B20ID全处理

void TemperatuerResult(uchar z)

WriteByte(0xcc); //skip rom

Init18b20 ();

if(z==1)

{

Matchrom(1); //匹配ROM 1

}

if(z==2)

{

Matchrom(2); //匹配ROM 2

}

WriteByte(0x44); //Temperature convert 启动温度转换TempDelay(800); //delay 100 uS//14

Init18b20 ();

WriteByte(0xcc); //skip rom

Init18b20 ();

if(z==1)

{

Matchrom(1); //匹配ROM 1

}

if(z==2)

{

Matchrom(2); //匹配ROM 2

}

WriteByte(0xbe); //read Temperature读取温度

p = temp_buff;

read_bytes (9);

GemTemp();

}

void GetTemp(uchar z)

{

if(TIM==10) //每隔 100ms 读取温度

{ TIM=0;

TemperatuerResult(z);

}

if(Temperature>300) //蜂鸣器提示

{BZ=~BZ;}

}

//[ t1 (10ms)中断] 中断

void T1zd(void) interrupt 3

{

TH1 = 0xD8; //10

TL1 = 0xF0;

TIM++;

}

// 以下是1602显示模块

void delay(uchar a)

{

uchar i;

while(a--)

{

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

{

_nop_();

_nop_();

_nop_();

_nop_();

}

}

}

//判忙

void lcd_mang()

{

rs=0;

rw=1;

e=1;

_nop_();

_nop_();

_nop_();

_nop_();

while(P0&0x80);

e=0;

}

//1602的写

void write_lcd1602(uchar cmd,uchar i) {

lcd_mang();

rs=i;

rw=0;

e=0;

_nop_();

_nop_();

e=1;

_nop_();

_nop_();

P0=cmd;

_nop_();

_nop_();

_nop_();

_nop_();

e=0;

}

//1602的初始化

void ini_lcd1602()

{

write_lcd1602(0x38,0);

delay(1);

write_lcd1602(0x0c,0);

delay(1);

write_lcd1602(0x06,0);

delay(1);

write_lcd1602(0x01,0);

delay(1);

}

Main.c

#include

#include

#define uchar unsigned char

#define uint unsigned int

sbit key=P1^0; // 按键的引脚定义

extern GetTemp(uchar z); //声明引用外部函数

extern uint Temperature; // 声明引用外部变量extern ini_lcd1602();

extern write_lcd1602(uchar cmd,uchar i); unsigned long LedOut[7],LedNumVal,LedOut_f[5]; void system_Ini()

{

TMOD|= 0x11;

TH1 = 0xD8; //10

TL1 = 0xF0;

IE = 0x8A;

TR1 = 1;

}

void main()

{ unsigned int Temperature_f;

unsigned char i;

unsigned int j;

unsigned int z;

system_Ini(); // 系统初始化

ini_lcd1602(); // 1602初始化

while(1)

{ j=P1;

j=j&0x0f;

if(j==0x00)

{

z=1;

write_lcd1602(0x80,0);

write_lcd1602(0x41,1);

write_lcd1602(0x52,1);

write_lcd1602(0x45,1);

write_lcd1602(0x41,1);

write_lcd1602(0x31,1);

write_lcd1602(0x3a,1);

GetTemp(z);

LedOut[0]=Temperature%10000/1000+0x30;

LedOut[1]=Temperature%1000/100+0x30;

LedOut[2]=Temperature%100/10+0x30; //十位

LedOut[3]=0x2E; //小数点

LedOut[4]=Temperature%10+0x30; //个位

LedOut[5]=0x43; //单位

write_lcd1602(0x87,0);

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

{

if(LedOut[0]==0x30)

LedOut[0]=0x20;

write_lcd1602(LedOut[i],1);

}

GetTemp(z);

Temperature_f=Temperature*1.8+320+0.5; //四舍五入 LedOut_f[0]=Temperature_f%10000/1000+0x30;

LedOut_f[1]=Temperature_f%1000/100+0x30;

LedOut_f[2]=Temperature_f%100/10+0x30; //十位

LedOut_f[3]=0x2E; //小数点

LedOut_f[4]=Temperature_f%10+0x30; //个位

LedOut_f[5]=0x46; //单位

write_lcd1602(0xc7,0);

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

if(LedOut_f[0]==0x30)

LedOut_f[0]=0x20;

write_lcd1602(LedOut_f[i],1);

}

}

if(j==0x01)

{

write_lcd1602(0x80,0);

write_lcd1602(0x41,1);

write_lcd1602(0x52,1);

write_lcd1602(0x45,1);

write_lcd1602(0x41,1);

write_lcd1602(0x32,1);

write_lcd1602(0x3a,1);

z=2;

GetTemp(z);

LedOut[0]=Temperature%10000/1000+0x30;

LedOut[1]=Temperature%1000/100+0x30;

LedOut[2]=Temperature%100/10+0x30; //十位

LedOut[3]=0x2E; //小数点

LedOut[4]=Temperature%10+0x30; //个位

LedOut[5]=0x43; //单位

write_lcd1602(0x87,0);

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

{

if(LedOut[0]==0x30)

LedOut[0]=0x20;

write_lcd1602(LedOut[i],1);

}

GetTemp(z);

Temperature_f=Temperature*1.8+320+0.5; //四舍五入 LedOut_f[0]=Temperature_f%10000/1000+0x30;

LedOut_f[1]=Temperature_f%1000/100+0x30;

LedOut_f[2]=Temperature_f%100/10+0x30; //十位

LedOut_f[3]=0x2E; //小数点

LedOut_f[4]=Temperature_f%10+0x30; //个位

LedOut_f[5]=0x46; //单位

write_lcd1602(0xc7,0);

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

if(LedOut_f[0]==0x30)

LedOut_f[0]=0x20;

write_lcd1602(LedOut_f[i],1);

}

}

}

}

附录2:实物图

图11 发射模块

单片机温度采集显示系统

考试序列号____ 单片机课程设计论文 论文题目:温度采集显示系统 课程名称:单片机课程设计 学院物理与光电工程学院 专业班级 08电子3班 学号 3108009223 姓名梁辉浩 联系方式 任课教师 20 年月日

温度采集显示系统 一、功能和要求: (1)温度测量范围 0 - 99℃。 (2)温度分辨率±1℃。 (3)选择合适的温度传感器。 (4)使用键盘输入温度的最高点和最低点,温度超出范围时候报警。(报警温度不需要保存) 二、系统方案: 方案一:由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。 方案二:进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。 从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。 三、核心元件的功能 1、AT89C51 AT89S51美国ATMEL公司生产的低功耗,高性能CMOS 8位单片机,片内含4K BytesISP(In-system programmable)的可反 复擦写1000次的Flash只读程序存储器,器 件采用ATMEL公司的高密度、非易失性存储技 术制造,兼容标准MCS-51指令系统及AT89C51 引脚结构,芯片内集成了通用8位中央处理器 和ISP Flash存储单元。单片机AT89S51强大 的功能可为许多嵌入式控制应用系统提供高 性价比的解决方案。 AT89C51芯片的引脚结构如图1所示: 1.1功能特性概括: AT89S51提供以下标准功能:40个引脚、 4K Bytes Flash片内程序存储器、128 Bytes 的随机存取数据存储器(RAM)、32个外部双

多路温度采集系统

小型多路温控采集系统设计一.系统说明

本系统采用51单片机作为控制器,控制温度采集及显示。 温度传感器选用DS18B20,其单总线的通信方式可以减少系统的线路连接。DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路。内温范围-55℃~+125℃,在-10~+85℃时精度为±℃可编程的分辨率为9~12位,对应的可分辨温度分别为℃、℃、℃和℃,可实现高精度测温。 同时本系统选用LCD1602作为显示器件,能够同时显示16x02即32个字符(16列2行)。其显示清晰,并可以显示阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,满足了系统要求。 二.系统电路图 三、程序流程图 四、程序解读 注:程序分两部分。可以先用程序二读出各个器件的序列号,再将序列号填入程序一的SN[4][8]数组中,若要加入更多的器件可以扩大数组,并在程序中增加读显的循环次数。 1.程序一:已知各个器件序列号读取温度 #include<> #define uchar unsigned char #define uint unsigned int uchar TMP[4]; 0”1”0c1”2”3”4”序二:读取DS18B20序列号程序 注:读ROM时,只能有一个器件与单片机通信。可以逐个相连来读出其ROM #include<> #define uchar unsigned char #define uint unsigned int uint sn[8]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10}; sbit DQ=P3^7;//ds18b20与单片机连接口 sbit RS=P3^0; sbit RW=P3^1; sbit EN=P3^2; void delay1ms(unsigned int ms)//延时1毫秒(不够精确的)

基于DS18B20的温度采集显示系统的设计

《单片机技术》课程设计任务书(三) 题目:基于DS18B20的温度采集显示系统的设计 一、课程设计任务 传统的温度传感器,如热电偶温度传感器,具有精度高,测量范围大,响应快等优点。但由于其输出的是模拟量,而现在的智能仪表需要使用数字量,有些时候还要将测量结果以数字量输入计算机,由于要将模拟量转换为数字量,其实现环节就变得非常复杂。硬件上需要模拟开关、恒流源、D/A转换器,放大器等,结构庞大,安装困难,造价昂贵。新兴的IC温度传感器如DS18B20,由于可以直接输出温度转换后的数字量,可以在保证测量精度的情况下,大大简化系统软硬件设计。这种传感器的测温范围有一定限制(大多在-50℃~120℃),多适用于环境温度的测量。DS18B20可以在一根数据线上挂接多个传感器,只需要三根线就可以实现远距离多点温度测量。 本课题要求设计一基于DS18B20的温度采集显示系统,该系统要求包含温度采集模块、温度显示模块(可用数码管或液晶显示)和键盘输入模块及报警模块。所设计的系统可以从键盘输入设定温度值,当所采集的温度高于设定温度时,进行报警,同时能实时显示温度值。 二、课程设计目的 通过本次课程设计使学生掌握:1)单总线温度传感器DS18B20与单片机的接口及DS18B20的编程;2)矩阵式键盘的设计与编程;3)经单片机为核心的系统的实际调试技巧。从而提高学生对微机实时控制系统的设计和调试能力。 三、课程设计要求 1、要求可以从键盘上接收温度设定值,当所采集的温度高于设定值时,进行报警(可以是声音报警,也可是光报警) 2、能实时显示温度值,若用Proteus做要求保留一位小数; 四、课程设计内容 1、人机“界面”设计; 2、单片机端口及外设的设计; 3、硬件电路原理图、软件清单。 五、课程设计报告要求 报告中提供如下内容:

多路温度采集系统设计与实现

学校代码:11517 学号:201150712117 HENAN INSTITUTE OF ENGINEERING 毕业设计(论文) 题目多路温度采集系统设计与实现 学生姓名高宇照 专业班级电气工程及其自动化1121 学号201150712117 系(部)电气信息工程学院 指导教师(职称) 张秋慧(讲师) 完成时间2012 年 5 月13日

目录 摘要................................................................................................... I ABSTRACT ........................................................................................... II 1 前言 . (1) 1.1 背景介绍 (1) 1.2 研究设计意义及目的 (1) 1.3 发展情况 (2) 1.4 本设计主要内容 (3) 2 设计任务及方案论证 (4) 2.1 设计任务 (4) 2.2 设计方案的论证 (4) 2.3系统框图设计 (6) 3 多路温度采集系统硬件电路设计 (7) 3.1系统模块及模块介绍 (7) 3.1.1 系统整体模块控制 (7) 3.1.2 模块介绍及原理 (7) 3.2 系统基本硬件组成设计 (14) 3.2.1微机芯片工作电路设计 (14) 3.2.2 温度采集电路设计 (15) 3.2.3LCD1602的显示设计 (17) 3.2.4 报警电路的设计 (18) 3.2.5 电源部分的设计 (19) 3.3 系统设计的电路结构图 (21) 4 系统的软件设计 (22) 4.1 主程序设计 (22) 4.2 子程序设计 (23) 5 系统调试与性能分析 (27) 5.1 系统调试 (27) 5.2 性能分析 (29) 结论 (31) 致谢 (32)

单片机温度采集系统

课程设计 课程设计名称:温度采集装置 班级:数控技术0901 学号: 课程设计时间:2011.12.5—12.11

目录 1 设计任务 (2) 2 确定设计方案 (3) 2.1 温度传感器—AD22100K (3) 2.2 A/D转换器—ADC0809 (4) 2.3 单片机的选择—80C51 (6) 2.4 显示器接口—LED动态显示接口 (8) 3 硬件电路的设计 (10) 3.1 温度传感器与A/D转换器的接口电路 (10) 3.2 A/D转换器与89C51的接口电路 (10) 3.3 89C51与显示器间的接口电路 (11) 3.4 晶振电路和复位电路的设计 (12) 4 软件设计 (13) 4.1温度采集的主程序流程图 (13) 4.2 程序清单 (15) 5 心得体会 (20) 附录 (21) 温度采集装置 1、设计任务

设计一个温度采集系统,要求按1路/s的速度顺序检测8路温度点,测温范围为+20℃~+100℃,测量精度为±1%。要求用5位数码管显示温度,最高位显示通道号,次高位显示“—”,低三位显示温度值。 2、设计方案 2.1 温度传感器—AD22100K AD22100K是有信号调节的单片温度传感器,工作温度范围为-50~+150,信号调节不需要调节电路、缓冲器和线性化电路,简化了系统设计。输出温度与电压和电源电压的乘积(比率测量)成比例。输出电压摆幅为0.25V(对应-50℃)和4.75V(对应150℃),用5V单电源工作。 2.1.1 AD22100K的引脚图如2.1.1 图2.1.1 AD22100K的引脚图 注:1.V电源 4.GND接地 2.U输出 3、5~8 NC不连接

单片机实验温度采集系统

单片机原理与运用 课 程 设 计 课题名称:专业班级:学生姓名:指导老师:完成时间:温度采集与显示系统2012年7月4号

摘要 随着信息技术的飞速发展,嵌入式智能电子技术已渗透到社会生产、工业 控制以及人们日常生活的各个方面。单片机又称为嵌入式微型控制器,在智能 仪表、工业控制、智能终端、通信设备、医疗器械、汽车电器、导航系统和家 用电器等很多领域都有着广泛的应用,已成为当今电子信息领域应用最广泛的 技术之一。 本文主要介绍了一个基于STC89C52单片机的温度采集与显示系统,详细 描述了利用液晶显示器件温度传感器DS18B20开发测温系统的原理,重点对传感器与单片机的硬件连接和软件编程进行了详细分析。主要地介绍了数字温度 传感器DS18B20的数据采集过程,进而对各部分硬件电路的工作原理进行了介绍。温度传感器DS18B20与STC89C52结合构成了最简温度检测系统,该系统可以方便的实现温度采集和显示,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合我们日常生活和工、农业生产中的温 度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。 单片机综合实验的目的是训练单片机应用系统的编程及调试能力,通过对 一个单片机应用系统进行系统的编程和调试,掌握单片机应用系统开发环境和 仿真调试工具及仪器仪表的实用,掌握单片机应用程序代码的编写和编译,掌 握利用单片机硬件仿真调试工具进行单片机程序的跟踪调试和排错方法,掌握 示波器和万用表等杆塔工具在单片机系统调试中应用。 关键词:单片机STC89C52、DS18B20温度传感器、液晶显示器LCD1602、AT24C02数据存储芯片

基于单片机的多路温度采集系统毕业设计(论文)外文翻译

华南理工大学学院 本科毕业设计(论文)外文翻译 外文原文名Structure and function of the MCS-51 series 中文译名MCS-51系列的功能和结构 学院电子信息工程学院 专业班级自动化一班 学生黎杰明 学生学号 3 指导教师吴实 填写日期2016年3月10日 页脚.

外文原文版出处:《association for computing machinery journal》1990, V ol.33 (12), pp.16-ff 译文成绩:指导教师(导师组长)签名: 译文: MCS-51系列的功能和结构 MSC-51系列单片机具有一个单芯片电脑的结构和功能,它是英特尔公司的系列产品的名称。这家公司在1976年推出后,引进8位单芯片的MCS-48系列计算机后于1980年推出的8位的MCS-51系列单芯片计算机。诸如此类的单芯片电脑有很多种,如8051,8031,8751,80C51BH,80C31BH等,其基本组成、基本性能和指令系统都是相同的。8051是51系列单芯片电脑的代表。 一个单芯片的计算机是由以下几个部分组成:(1)一个8位的微处理器(CPU)。(2)片数据存储器RAM(128B/256B),它只读/写数据,如结果不在操作过程中,最终结果要显示数据(3)程序存储器ROM/EPROM(4KB/8KB).是用来保存程序一些初步的数据和切片的形式。但一些单芯片电脑没有考虑ROM/EPROM,如8031,8032,80C51等等。(4)4个8路运行的I/O接口,P0,P1,P2,P3,每个接口可以用作入口,也可以用作出口。(5)两个定时/计数器,每个定时方式也可以根据计算结果或定时控制实现计算机。(6)5个中断(7)一个全双工串行的I/UART(通用异步接收器I口/发送器(UART)),它是实现单芯片电脑或单芯片计算机和计算机的串行通信使用。(8)振荡器和时钟产生电路,需要考虑石英晶体微调能力。允许振荡频率为12MHz,每个上述的部分都是通过部数据总线连接。其中CPU是一个芯片计算机的核心,它是计算机的指挥中心,是由算术单元和控制器等部分组成。算术单元可以进行8位算术运算和逻辑运算,ALU单元是其中一种运算器,18个存储设备,暂存设备的积累设备进行协调,程序状态寄存器PSW积累了2个输入端的计数等检查暂时作为一个操作往往由人来操作,谁储存1输入的是它使操作去上暂时计数,另有一个操作的结果,回环协调。此外,协调往往是作为对8051的数据传输转运站考虑。作为一般的微处理器,解码的顺序。振荡器和定时电路等的程序计数器是一个由8个计数器为2,总计16位。这是一个字节的地址,其实程序计数器,是将在个人电脑进行。从而改变它的容可以改变它的程序进行。在8051的单芯片电脑的电路,

虚拟仪器温度采集系统

内蒙古科技大学虚拟仪器期末大作业 题目:虚拟仪器温度采集系统 姓名:王伍波 专业:测控技术与仪器 学号:1067112240 班级:测控10-2班 教师:肖俊生 时间:2013年6月18日

一、设计题目:虚拟仪器温度采集系统 二、设计要求: 1.连续采集温度信号,并存储 2.温度上下限报警功能,上下限可调 3.华氏、摄氏可转换显示 三、设计思路: 该设计是以计算机和单片机数据采集系统为核心,单片机数据采集系统主要完成对温度信号进行数据采集,计算机主要完成温度信号的分析、显示和控制等功能。设计中采用Intel 公司的89C51 单片机完成数据采集,采用A D 5 7 4 完成数据的A/D 转换。图2 为AD574 与89C51 单片机的接口电路。 1.设计虚拟前面板 温度监测软件设计本系统以labview8.5 作为开发工具。现以仿真数据为例来讲述系统软件对温度的监测、报警及显示功能。利用labview8.5编程使温度可以在华氏和摄氏之间随时进行切换,同时对温度实时监测。当温度超过上限要求时会及时点亮报警灯进行报警并显示每次采集过程中累加的报警次数,报警的上限值可以通过前面板的输入控件改变其值。采集进度定义为每次采集100 点。为了防止程序陷入死循环每次采集之间的时间间隔为1000ms。开始采集后在整个采集过程中可以暂停采集以便随时对温度进行观察。 2、编辑流程图 每一个程序前面板都对应着一段框图程序框图程序用

LabVIEW 图形编程语言编写.可以把它理解成传统程序的源代码。框 图程序由端口、节点、.图框和连线构成。其中端口被用来同程序前 面板的控制和显示传递数据.节点被用来实现函数和功能调用.图框 被用来实现结构化程序控制命令.而连线代表程序执行过程中的数据流.定义了框图内的数据流动方向 3、运行检验 检验是否能够完成系统的功能.改变相应参数进行进一步验证.以方便根据实际情况修改设计.从而方便实际器件的设计、调试。4、功能描述 创建一个VI程序模拟温度测量:把创建的温度计程、序 T(hermometerVI1作为一个子程序用在当前新建程序里.先前的温 度计子程序用于采集数据.而当前的程序用于显示温度曲线.并在前 面板上设定测量次数和每次测量间隔的延时;再创建一个新VI程序,进行温度测量,并把结果在波形图表上显示:利用新创建的VI程序.再输入新的字符串;据采集过程中。实时地显示数据;当采集 过程结束后,在图表上画出数据波形.并算出最大值、最小值和平 均值(此处只使用摄氏温度单位):修改TemperatureAnalysis.VI DemoReadVohageVI程序以检测温度是否超出范围.当温度超出上限(High Limit)时,前面板上的LED点亮,并且有一个蜂鸣器发声。5、设计过程 创建一个VI程序模拟温度测量假设传感器输出电压与温度成 正比。例如.当温度为70时,传感器输出电压为0.7V。本程序也

多路温度检测.显示与报警系统设计

课程设计报告 课题多路温度检测、显示与报警系统设计小组成员 指导老师

目录 一、前言2222222222222222222222222222222222222222222222221 二、方案论证222222222222222222222222222222222222222222221 2.1测温元件的选择2222222222222222222222222222222222221 2.1.1热电偶和热电阻的选择222222222222222222222222221 2.1.2热电偶的分类22222222222222222222222222222222222 2.2采集模块的选择2222222222222222222222222222222222223 2.2.1多功能采集卡22222222222222222222222222222222223 2.2.2 USB采集卡2222222222222222222222222222222222224 2.2.3采集模块ADAM-4000系列2222222222222222222222224 2.2.4采集模块ADAM-5000系列2222222222222222222222225 三、硬件电路设计22222222222222222222222222222222222222222226 3.1系统结构方框图2222222222222222222222222222222222227 3.2采集模块与主机电路222222222222222222222222222222227 3.3采集模块与设备电路222222222222222222222222222222228 四、软件设计222222222222222222222222222222222222222222222229 4.1组态界面的设计2222222222222222222222222222222222229 4.2报警系统的设计2222222222222222222222222222222222229 4.3实时温度数据曲线的设计22222222222222222222222222211

单片机温度采集显示系统设计

课程设计 课程名称:微机原理与接口技术课程设计题目名称:温度采集显示系统 学生学院 专业班级 学号 学生姓名 指导教师

一、设计题目 温度采集系统 二、设计任务和要求 功能要求: (1)温度测量范围 0 - 99℃。 (2)温度分辨率±1℃。 (3)选择合适的温度传感器。 (4)使用键盘输入温度的最高点和最低点,温度超出范围时候报警。(报警温度不需要保存) 要求完成的内容: (1)系统硬件设计,并用电子CAD软件绘制出原理图, (2)给出流程图,编写并调试程序。 (3)撰写设计报告。 三、原理电路图和设计程序 1、方案比较 (1)、系统总体方案设计 总体框架图如图1示,软件流程图如图示

①该温度控制系统的设计包括硬件设计和软件设计两大部分,结合实际情况,该系统应具备如下功能: A、实时采集温度; B、显示温度; C、串行传送数据; D、控制外设;

②系统硬件设计 系统的硬件设计部分主要由以下几部分组成: A、单片机最小系统; B、温度采集模块; C、温度显示模块; D、串行通信模块; E、报警电路; 图2 软件流程图 (2)、方案比较 方案一采用8031作为控制核心,以使用最为普遍的器件ADC0809作模数转换,控制上使用对电阻丝加电使其升温和开动风扇使其降温。此方案简易可行,器件的价格便宜,但8031内部没有程序存储器,需要扩展,增加了电路的复杂性,且ADC0809是8位的模数转换,不能满足本题目的精度要求。 方案二采用比较流行的AT89S51作为电路的控制核心, AT89S52不但与8051,8052 指令,管脚完全兼容,而且其片内的程序存储器采用FLASH 工艺,用户可以用电的方式瞬间擦除、改写。AT89S52 单片机还支持在线编程,用户通过简单的电路连接就可以将电脑里的程序下载到单片机中,减少调试程序时不断拆卸和插入给芯片带来的损坏。此外AT89S52 单片机有8 KB的程序存储器和256 B 的数据存储器,不需外部扩展存储芯片,可以降低硬件电路的复杂度。此方案电路简单并且可以满足题目中的各项要求的精度。

多路温度采集器设计

J I A N G S U U N I V E R S I T Y 《嵌入式项目应用实践》 恭喜你 学院名称:计算机科学与通信工程学院 班级:计院的孩子 小组成员:雷锋 教师姓名:你猜猜 2016年 5 月 10日

一.实验题目 多路温度采集系统的设计。 二.实验要求 a)使用PROTEUS 8和ARDUINO IDE 进行硬件电路设计和MCU程序设 计 b)使用ALTIUM DXP 进行PCB版图设计 c)三个人一组,完成项目。每组交一份报告,一份PPT并答辩。 1.使用PROTEUS 8和ARDUINO IDE 进行硬件电路设计和MCU程序设计: 将三种温度采集的温度值显示在屏幕上,同时利用串口输出温度值。 d)分别使用LM35、DS18B20、MAX6657器件进行温度采集,使用ARDUINO 设计MCU程序。 e)时用拨动开关进行温度来源选择,开关导通时,对应LED点亮,采到的 温度要输出到液晶屏和串口。即最多可以同时显示3个器件采集的温度,最少1个。当一个都没选时,用蜂鸣器提示。 f)设计时可能数字引脚不够,此时,A0可以做为14脚处理,A1做为15 脚,以此类推。 2.使用ALTIUM DXP进行PCB版图设计 a)在DXP中绘制原理图。 b)注意:DXP中没有MAX6675芯片,需自己创建原理图元件和PCB封装。 c)液晶屏用合适的接线座替代或自行设计。 d)增加电源变压器插座(假设输入为8V)和LM7805稳压芯片将电压稳定在 5V,并做为系统供电。 e)进行PCB版图设计,即进行PCB层数设置、元件布局和布线。设计时要 考虑线宽、布线规定、防噪声设计等。 f)注意:元件位置要合理,便于用户使用。

基于单片机的多路温湿度检测系统设计

基于单片机的多路温湿度检测系统设计 潘磊 (天津冶金职业技术学院电气工程系,天津300400) 摘要:介绍了以C8051F120单片机和PC 机为核心的温湿度检测系统,论述了系统的组成,各模块硬件电路设计以及系统上位机、下位机的软件设计。系统下位机实时收集多路SHT71传感器采集的数据并显示上传,上位机利用VB 中MSComm 控件完成数据接收和处理,实现了对环境温湿度的现场显示和远距离控制。 关键词:温湿度检测;C8051F120;SHT71;VB 中图分类号:TP274文献标识码:A 文章编号:1673-1131(2013)01-0065-02 随着社会生产的不断发展进步,许多工农业生产过程以 及民用场合都需要对环境的温度和湿度进行检测并控制,比 如:粮仓、温室蔬菜大棚、通信基站、电力变电房、药厂、图书馆、 博物馆等。为此本文设计了一个系统实现对环境温度湿度的 检测控制。 1系统结构 本系统主要由电源模块、单片机系统、键盘及LCD 显示 模块、温度湿度传感器采集模块、时钟芯片模块、语音报警模 块、通信模块以及上位机系统组成。系统能够实时采集四处 检测环境的温度和湿度,并把采集数据显示在LCD 屏上,通 过键盘预先设置温湿度上下限数值,当所检测的温度或湿度 超过所设定的数值语音报警模块报警。同时,下位机上传温 度湿度数据,上位机对数据进行存储、显示以及数据分析。系 统框图如图1 所示。 图1系统框图 2系统硬件设计 2.1单片机系统 本系统选用Cygnal 公司的C8051F120单片机作为核心 处理器,此款单片机有64位I/O 口,满足本系统外设较多的需 求,减少系统I/O 扩展,也为增加检测通路和系统扩展预留接 口。单片机峰值处理速度达到100Mips ,大大提高了系统的实 时性,内部带有128KB FLASHROM 能够满足多路实时数据 的大容量存储,集成2个UART ,1个I 2C ,1个SPI 接口便于与 外围设备及上位机传输数据。 2.2温度湿度传感器采集模块 传统模拟式温湿传感器的测量精度和分辨率很低,只有 1%左右,同时要获得高精度还需要更高精度的基准电压。另 外,所测得的模拟量还要进过A/D 转换才能送入微处理器 进行处理。为避免上述问题本系统采用全校准数字输出相 对湿度和温度传感器SHT71,与单片机接口电路图如图2所 示。图2 温度湿度传感器采集模块图3LCD 显示模块为了实现多点同时测量减少采集等待时间,同时尽量少的占用I/O 口资源,本系统将SHT71的时钟线SCK 都连接到P1.0口,数据线DATA 分别连接到P1口其他4个I/O 口上,并在数据线DATA 端加入上拉电阻。通过软件程序写入命令 即可完成温湿度数据采集,但传感器输出的测量量并不是实 际值,还需进行数据转换。2013年第1期 (总第123期)2013(Sum.No123) 信息通信INFORMATION &COMMUNICATIONS

温湿度采集系统设计

目录 第1章设计意义及要求 (1) 1.1 设计意义 (1) 1.2 设计要求 (1) 第2章硬件设计 (2) 2.1 AT89S52芯片介绍 (2) 2.2 液晶显示器LCD1602 (3) 2.2.1 液晶显示原理 (3) 2.2.2 液晶显示器分类 (3) 2.2.3 显示原理 (3) 2.2.4 LCD1602的基本参数及引脚功能 (4) 2.3 温湿度模块DHT11介绍 (6) 2.3.1 DHT11概述 (6) 2.3.2 DHT11传感特性说明 (7) 2.3.3 DHT11封装信息 (8) 2.3.4 串行接口(单线双向) (8) 第3章设计实现 (11) 3.1 设计框图及流程 (11) 3.2 设计结果及分析 (11) 第4章设计总结 (13) 参考文献 (14) 附录 (15)

第1章设计意义及要求 1.1 设计意义 最近几年来,随着科技的飞速发展,单片机领域正在不断的走向社会各个角落,还带动传统控制检测日新月异更新。在实时运作和自动控制的单片机应用到系统中,单片机如今是作为一个核心部件来使用,仅掌握单片机方面知识是不够的,还应根据其具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。 现代社会越来越多的场所会涉及到温度与湿度并将其显示。由于温度与湿度不管是从物理量本身还是在实际人们的生活中都有着密切的关系,例如:冬天温度为18至25℃,湿度为30%至80%;夏天温度为23至28℃,湿度为30%至60%。在此范围内感到舒适的人占95%以上。在装有空调的室内,室温为19至24℃,湿度为40%至50%时,人会感到最舒适。如果考虑到温、湿度对人思维活动的影响,最适宜的室温度应是工作效率高。18℃,湿度应是40%至60%,此时,人的精神状态好,思维最敏捷。所以,本课程设计就是通过单片机驱动LCD1602,液晶显示温湿度,通过此设计,可以发现本设计有一定的扩展性,而且可以作为其他有关设计的基础。如何高效、稳定地对数据(包括温度、湿度光线、压力等项目)进行实时采集对于现代的企业、工厂、研究所等对数据精度要求较高的单位具有非常重要的意义。 1.2 设计要求 本系统设计采用温度和湿度作为采集对象,是以单片机为核心的温度、湿度采集、数字显示系统,用液晶显示出当前温度、湿度的信息。以此了解AT89S52芯片为核心外接温度传感器和湿度传感器模块在液晶显示屏上显示当前的温度和湿度的过程。

基于51单片机的多路温度采集控制系统设计

基于51单片机的多路温度采集控制系统设计 前言: 随着现代信息技术的飞速发展,温度测量控制系统在工业、农业及人们的日常生活中扮演着一个越来越重要的角色,它对人们的生活具有很大的影响,所以温度采集控制系统的设计与研究有十分重要的意义。 本次设计的目的在于学习基于51单片机的多路温度采集控制系统设计的基本流程。本设计采用单片机作为数据处理与控制单元,为了进行数据处理,单片机控制数字温度传感器,把温度信号通过单总线从数字温度传感器传递到单片机上。单片机数据处理之后,发出控制信息改变报警和控制执行模块的状态,同时将当前温度信息发送到LED进行显示。本系统可以实现多路温度信号采集与显示,可以使用按键来设置温度限定值,通过进行温度数据的运算处理,发出控制信号达到控制蜂鸣器和继电器的目的。 我所采用的控制芯片为AT89c51,此芯片功能较为强大,能够满足设计要求。通过对电路的设计,对芯片的外围扩展,来达到对某一车间温度的控制和调节功能。 关键词:温度多路温度采集驱动电路 正文: 1、温度控制器电路设计 本电路由89C51单片机温度传感器、模数转换器ADC0809、窜入并出移位寄存器74LS164、数码管、和LED显示电路等组成。由热敏电阻温度传感器测量环境温度,将其

电压值送入ADC0809的IN0通道进行模数转换,转换所得的数字量由数据端D7-D0输出到89C51的P0口,经软件处理后将测量的温度值经单片机的RXD端窜行输出到74LS164,经74LS164 窜并转换后,输出到数码管的7个显示段,用数字形式显示出当前的温度值。89C51的P2.0、P2.1、P2.2分别接入ADC0809通道地址选择端A、B、C,因此ADC0809的IN0通道的地址为F0FFH。输出驱动控制信号由p1.0输出,4个LED为状态指示,其中,LED1为输出驱动指示,LED2为温度正常指示,LED3为高于上限温度指示,LED4为低于下限温度指示。当温度高于上限温度值时,有p1.0输出驱动信号,驱动外设电路工作,同时LED1亮、LED2灭、LED3亮、LED4灭。外设电路工作后,温度下降,当温度降到正常温度后,LED1亮、LED2亮、LED3灭、LED4灭。温度继续下降,当温度降到下限温度值时,p1.0信号停止输出,外设电路停止工作,同时LED1灭、LED2灭、LED3灭、LED4亮。当外设电路停止工作后,温度开始上升,接着进行下一工作周期。 2、温度控制器程序设计 本软件系统有1个主程序,6个子程序组成。6个子程序为定时/计数器0中断服务程序、温度采集及模数转换子程序ADCON、温度计算子程序CALCU、驱动控制子程序DRVCON、十进制转换子程序METRICCON及数码管显示子程序DISP。 (1)主程序 主程序进行系统初始化操作,主要是进行定时/计数器的初始化。 (2)定时/计数器0中断服务程序 应用定时计数器0中断的目的是进行定时采样,消除数码管温度显示的闪烁现象,用户可以根据实际环境温度变化率进行采样时间调整。每当定时时间到,调用温度采集机模数转换子程序ADCON,得到一个温度样本,并将其转换为数字量,传送给89C51单片机,

温度数据采集系统

第三章 系统硬件设计温度数据采集系统和接收显示硬件电路主要包含温度数据采集、发送、接收和显示等模块,温度数据采集采用数字式温度传感器 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 所示。、管路敷设技术通过管线敷设技术不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。、电气课件中调试对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。 、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

《多路温度检测系统》

《多路温度检测系统》 设计报告 一:统整体设计 多路温度检测系统以8051单片机系统为核心,能对多点的温度进行实时控制巡检。各检测单元(从机)能独立完成各自功能,根据主控机的指令对温度进行实时或定时采集,测量结果不仅能在本地储存、显示,而且可以利用单片机串行口,通过RS-485总线及通信协议将将采集的数据传送到主控机,进行进一步的分析、存档、处理和研究。主控机负责控制指令发送,控制各个从机进行温度采集,收集测量数据,并对测量结果(包括历史数据)进行整理、显示和打印。主控机与各从机之间能够相互联系、相互协调,从而达到了系统整体统一、和谐的控制效果。系统框图如下: 温度测点1温度测点2温度测点3温度测点4丛机1 丛机2 丛机3 丛机4 4 8 5 通 讯 电 缆主 控 机 键盘 显示器 打印机图1 系统框图 声光报警 本系统的特点是: ?具有实时检测功能,能够同时检测4路温度,检测温度范围0℃~400℃; ?使用12位AD转换,采用过采样和工频周期求均值技术,分辨率达到16位,检测温度变化最小值达到0.007℃; ?使用RS-485串行总线进行传输,MAX485驱动芯片进行电平转换,传送距离大于1200m,抗干扰能力强; ?可由主控机统一设置系统时间和温度修正值; ?可由主控机分别设置各从机的温度报警上下限,主机、从机均具有声光报警功能; ?具有定时、整点收集各从机数据功能,使用I2C串行E2PROM,可保存各从机以往24小时的数据,具有数据更新 与掉电保护功能; ?具有数据分析功能,能显示各从机以往24小时的温度变化曲线与平均值; ?从机可显示当前温度、时间、报警阈值等信息; ?从机之间可通过主机中转进行通信,根据用户需要观察其他从机实时温度值; ?主从机均采用中文点阵式液晶显示器,人机界面友好; ?具有打印功能; ?自制了主控机和从机所使用的直流稳压电源。

多路温度采集与控制1(C51、ADC0808)

单片机原理与应用课程设计 设计题目:温度测控系统设计 设计时间:2011-2012第一学期 专业班级:电自化2008级3班 姓名学号:王勇20082390 指导老师:赵丽清 2011 年12 月25 日

目录 目录 0 第一章设计要求及目的 (2) 第二章系统总体方案选择与说明 (3) 第三章系统方框图与工作原理 (4) 第四章器件说明 (6) 4.1 单片机89C51说明 (6) 4.2 ADC0809说明 (6) 4.3 ADC0809 应用说明 (7) 4.4 LED显示器 (8) 4.5 8255可编程器件扩展并行接口 (9) 第五章软件设计与说明.................. 错误!未定义书签。 5.1 程序设计 (17) 总结.................................. 错误!未定义书签。参考文献 (25)

第一章设计要求及目的 数据采集系统用于将模拟信号转换为计算机可以识别的数字信号.该系统目的是便于对某些物理量进行监视.数据采集系统的好坏取决于他的精度和速度.设计时,应在保证精度的情况下尽可能的提高速度以满足实时采样、实时处理、实时控制的要求.在科学研究中应用该系统可以获得大量动态;是研究瞬间物理过程的重要手段;亦是获取科学奥秘的重要手段之一.这次设计用到的集成芯片主要有8051单片机、ADC0808等.ADC0800主要作用是对八路模拟信号进行选择采集,并将其转化为八位数字信号,再送至主控制器(8051单片机);软件部分即为控制单片机的工作进程,程序由汇编语言完成并在PROTEUCE开发软件中进行的调试与仿真. 设计要求: ●温度检测范围0 ℃ ~ 64℃; ●选择合适的方式对采集的值应进行数字滤波; ●数码管显示,同时显示通道号; ●具有超限报警功能; ●可通过键盘设置上、下限值。

基于采用AT89S51单片机和LM35温度传感器的温度采集显示系统设计

基于采用AT89S51单片机和LM35温度传感器的温度采集显示系统设计随着电子和传感技术的快速发展,温度的测量和控制在民用、工业以及航空航天技术等领域,等到了广泛应用。小型的、低功耗的、廉价的、可靠性高的温度传感器引起了人们的广泛关注。在实际生产、生活等领域中,温度是环境因素不可或缺的一部分,对温度进行及时精确的控制和检测显得尤为重要。本文基于AT89S51单片机,采用 LM35温度传感器,设计了一种灵敏度较高,抗干扰能力强,工作稳定可靠的温度采集显示系统。 1、系统结构及工作原理温度采集显示系统电路由温度采集模块、A/D转换模块、单片机控制模块、数码管显示模块和下载模块组成。电路工作原理是:首先由LM35温度传感器采集外界环境的温度,经LM358放大10倍后以电压形式输入到A/D采样电路,由A/D 转换器TLC549将温度的数字量值传送给单片机系统,再有单片机系统驱动数码管显示温度。本文设计的基于LM35的单片机温度采集显示系统的温度测量范围为25℃~80℃温度采集显示系统电路是一个开环控制系统系统原理框图如图1示: 2、系统核心硬件电路设计系统核心硬件电路设计主要包含温度采集模块的设计、A/D转换模块的设计、单片机控制模块的设计、数码管显示模块的设计和下载模块的设计。 2.1、采集模块的设计 传感器是信号输入的第一个环节,也是整个测试系统性能的关键环节之一,因此对传感器的正确选用显得尤为重要。在本系统中,温度采集模块的核心硬件采用LM35温度传感器,该器件有很高的工作精度和较宽的线性工作范围,其输出电压与摄氏温度线性成比例,温度每上升1℃,电压上升10ms。LM35无需外部校准,可以提供±1/4℃的常用室温精度。从经济适用等多方面考虑,系统采用LM35温度传感器和LM358放大电路进行温度采集模块的设计,设计原理图如图2 所示。图2中,经过LM35传感器采集后的微弱电压通过LM358 放大电路放大10倍后送入单片机。 2.2、/D 转换模块的设计

最新刘世鹏--多路温度采集系统设计

刘世鹏--多路温度采集系统设计

课程设计报告 课程名称:多路温度采集系统设计 学生姓名:刘世鹏 学号: 201016020214 专业班级: T10102 指导教师:李文圣 完成时间: 2013年6月10日 报告成绩: 评阅意见: 评阅教师日期

多路温度采集系统设计 1 课程设计目的 温度是一种最基本的环境参数,人们的生活与环境温度息息相关,因此研究温度的测量方法和装置具有重要的意义。温度测量装置的关键是温度传感器,温度传感器的发展经历了三个发展阶段:(1)传统的分立式温度传感器,(2)模拟集成温度传感器,(3)智能集成温度传感器。目前,国际上新型温度传感器正从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展。 本人选择数字式多路温度采集系统设计。 系统主要技术指标: (1)2路温度采集电路及以上; (2)采集测温范围为-50~+110 ℃; (3)温度精度,误差在0.1 ℃以内; (4)显示模块,采用LED数码管显示。

2设计步骤 按照系统设计功能的要求,系统由5个模块组成:主控制器、温度采集电路[1]、温度显示电路、报警控制电路及键盘输入控制电路。数字式多路温度采集系统总体电路结构框图如图1所示。 图1 数字式多路温度采集系统结构框图 采用智能温度传感器(DS18B20)采集环境温度并进行简单的模数转换;单片机(AT89C51)执行程序对温度传感器传输的数据进行进一步的分析处理,转换成环境对应的温度值,通过I/O口输出到数码显示管(LED)显示;由键盘输入控制选择某采集电路检测温度及显示;报警电路对设定的最高最低报警温度进行监控报警。 2.1温度采集电路设计 温度采样处理电路由温度传感器、放大电路、A/D转换电路等组成。采用分块结构的温度采样处理电路,其硬件电路结构复杂,也不便于数据的处理。采用智能温度传感器采样处理电路,能够方便的进行温度的采集及简单的数据处理。并且可以达到设计的技术指标要求。本系统选择智能温度传感器DS18B20作为温度采集电路的核心器件。由DS18B20及辅助电路构成温度采集电路。

相关主题
文本预览
相关文档 最新文档