基于单片机和LM35的温度测量系统Word格式文档下载.docx

上传人:b****5 文档编号:8415167 上传时间:2023-05-11 格式:DOCX 页数:23 大小:637.28KB
下载 相关 举报
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第1页
第1页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第2页
第2页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第3页
第3页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第4页
第4页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第5页
第5页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第6页
第6页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第7页
第7页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第8页
第8页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第9页
第9页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第10页
第10页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第11页
第11页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第12页
第12页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第13页
第13页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第14页
第14页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第15页
第15页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第16页
第16页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第17页
第17页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第18页
第18页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第19页
第19页 / 共23页
基于单片机和LM35的温度测量系统Word格式文档下载.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机和LM35的温度测量系统Word格式文档下载.docx

《基于单片机和LM35的温度测量系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机和LM35的温度测量系统Word格式文档下载.docx(23页珍藏版)》请在冰点文库上搜索。

基于单片机和LM35的温度测量系统Word格式文档下载.docx

工作方框图:

电路原理图:

2)方案二:

AVR单片机方案

该电路上利用AVR单片机对输入信号进行模数转换输出数字信号控制数码管显示温度值。

并且可以通过编写程序对输入信号进行分段线性化处理,使得测量精度大大提高,而且该电路无须外接译码器,结构简单

工作方框图

该方案比较合理,但是限于对AVR单片机不是很娴熟,只得舍弃。

3)方案三:

8052单片机方案(实际使用的方案)

由于我们的温度传感器是选择LM35,显然用低成本高可靠性的51单片机是最佳的方案,故我们选择该方案

三、系统工作原理分析

本系统由温度传感器LM35、微处理器、显示电路、软件构成。

LM35输出的是就是表示摄氏温度的模拟量,经A/DTLC1549C转换成数字量,再用8052单片机进行数据处理、译码、动态扫描显示等,下面的系统的总的框图:

1、微控制器原理

本系统采用STC公司的STC89C52作为微控制器.STC89C52处理芯片

主要性能:

与MCS-51单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:

0Hz~33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。

  功能特性描述:

STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。

使用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

STC89C52具有以下标准功能:

8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

P0口:

P0口是一个8位漏极开路的双向I/O口。

作为输出口,每位能驱动8个TTL逻辑电平。

对P0端口写“1”时,引脚用作高阻抗输入。

  当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。

在这种模式下,P0具有内部上拉电阻。

  在flash编程时,P0口也用来接收指令字节;

在程序校验时,输出指令字节。

程序校验时,需要外部上拉电阻。

  P1口:

P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。

对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。

在flash编程和校验时,P1口接收低8位地址字节。

引脚号第二功能

  P1.0T2(定时器/计数器T2的外部计数输入),时钟输出

  P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)

  P1.5MOSI(在线系统编程用)

  P1.6MISO(在线系统编程用)

  P1.7SCK(在线系统编程用)

  P2口:

P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。

对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

  在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。

在这种应用中,P2口使用很强的内部上拉发送1。

在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

  P3口:

P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个TTL逻辑电平。

对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

P3口亦作为STC89C52特殊功能(第二功能)使用,如下表所示。

在flash编程和校验时,P3口也接收一些控制信号。

  端口引脚第二功能

  P3.0RXD(串行输入口)

  P3.1TXD(串行输出口)

  P3.2INTO(外中断0)

  P3.3INT1(外中断1)

  P3.4TO(定时/计数器0)

  P3.5T1(定时/计数器1)

  P3.6WR(外部数据存储器写选通)

  P3.7RD(外部数据存储器读选通)

  此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。

  RST——复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

  ALE/PROG——当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。

要注意的是:

每当访问外部数据存储器时将跳过一个ALE脉冲。

  对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

  如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。

此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

  PSEN——程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当STC89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

  EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

  如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。

  FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

这里讲一下动态扫描显示原理:

一般的LED器七段数码管显示是用静态显示,所谓就是任意时刻内的数码管都是亮的,这样系统要提供很多引线出来,功耗又大,单片机的资源很少,一般采用动态扫描的方式显示,所谓动态扫描就是在一个时刻内只亮一个管,利用我们人眼的视觉暂留就可以显示类似静态显示的效果,要求扫描的速度要快,一般是毫秒级。

优点是省下了大量的IO口,功耗小,但是显示位数不能过多,扫描是占用CPU一定的时间。

2、传感器原理

经过比较,我们选择了NC公司的温度传感器LM35.

1) 

LM35简介

在自动控制、机电整合的应用中,温度的测量为常见的需求,感测温度的產品有多种型态,依特性可概分为膨胀变化型、颜色变化型、电阻变化型、电流变化型、电压变化型、频率变化型…等,常见的电压变化型的温度传感器有LM35、LM335,其不同点为LM35之输出电压是与摄氏温标呈线性关係,而LM335则是与凯氏温标呈线性关系。

由於摄氏温标较常使用,因此本文将针对LM35做介绍。

1.温度传感器LM35

LM35是由NationalSemiconductor所生产的温度感测器,其输出电压与摄氏温标呈线性关係,转换公式如式

(1),0°

C时输出为0V,每升高1°

C,输出电压增加10mV。

(1)

LM35有多种不同封装型式,外观如图1所示。

在常温下,LM35不需要额外的校准处理即可达到±

°

1/4C的准确率。

其电源供应模式有单电源与正负双电源两种,其引脚如图2所示,正负双电源的供电模式可提供负温度的量测;

两种接法的静默电流-温度关係如图3所示,单电源模式在25°

C下静默电流约50μA,非常省电。

图1:

LM35封装及引脚排列

图2:

LM35接线图

图3

2.

我们最终确定使用OP07运算放大器。

Op07是一种低噪声,非斩波稳零的双极性运算放大器。

由于OP07具有非常低的输入失调电压(对于OP07A最大为25μV),所以OP07在很多应用场合不需要额外的调零措施。

OP07同时具有输入偏置电流低(OP07A为±

2nA)和开环增益高(对于OP07A为300V/mV)的特点,这种低失调、高开环增益的特性使得OP07特别适用于高增益的测量设备和放大传感器的微弱信号等方面。

宽的输入电压范围(最少±

13V)与高达110dB(OP07A)的共模抑制比和高输入阻抗的结合,在同相电路阻态中提供了很高的精度,即使在很高的闭环增益下,也能保持极好的线性和增益精度。

失调和增益对时间或温度变化的稳定性也是极好的。

不加外调零措施的OP07的精度和稳定性,即使在高增益下也能使OP07成为一种新的仪器用和军用的工业标准。

OP07A和OP07适用于在-55℃到+125℃的整个军用范围内,

特点:

·

超低失调电压10uV·

超低失调电压漂移0.2uV/OC

有长期的稳定性0.2uV/月·

宽共模输入范围±

14.0V

宽的电源电压范围±

3V~±

18V·

不需要外部元件调整

封装外形图(管脚朝下)

绝对最大额定值:

(TA=25℃)

电源电压:

…………………………………………..±

22V

内部功耗(注1):

…………………….……….500mW

差模输入电压:

……………………………………±

30V

输入电压(注3):

………………………………….±

输出短路持续时间:

………………………………….不限

工作温度范围(OP07A、OP07):

…….-55℃~+125℃

储存温度范围:

………………………….-65℃~+150℃

引线温度范围(焊接,60s):

…………………….300℃

4、A/D的选择。

TLC1549是美国德州仪器公司生产的10位模数转换器。

它采用CMOS工艺,具有内在的采样和保持,采用差分基准电压高阻输入,抗干扰,可按比例量程校准转换范围,总不可调整误差达到±

1LSBMax(4.8mV)等特点。

TLC1549的工作温度范围内(自然通风)极限参数如下:

电源电压范围:

-0.5~6.5V

输入电压范围:

-0.3~VCC+0.3V

输出电压范围:

正基准电压:

VCC+0.1V

负基准电压:

-0.1V

峰值输入电流(任何输入端):

20mA

峰值总输入电流(所有输入端):

30mA

工作温度范围(自然通风):

TLC1549C 

0~70℃

TLC1549I 

-40~80℃

TLC1549M 

-65~125℃

二、工作原理

  在芯片选择(CS)无效情况下,I/OCLOCK最初被禁止且DATAOUT处于高阻状态。

当串行接口把CS拉至有效时,转换时序开始允许I/OCLOCK工作并使DATAOUT脱离高阻状态。

串行接口然后把I/OCLOCK序列提供给I/OCLOCK并从DATAOUT接收前次转换结果。

I/OCLOCK从主机串行接口接收长度在10和16个时钟之间的输入序列。

开始10个I/O时钟提供采样模拟输入的控制时序。

在CS的下降沿,前次转换的MSB出现在DATAOUT端。

10位数据通过DATAOUT被发送到主机串行接口。

为了开始转换,最少需要10个时钟脉冲。

如果I/OCLOCK传送大于10个时钟长度,那么在的10个时钟的下降沿,内部逻辑把DATAOUT拉至低电平以确保其余位的值为零。

在正常进行的转换周期内,规定时间内CS端高电平至低电平的跳变可终止该周期,器件返回初始状态(输出数据寄存器的内容保持为前次转换结果)。

由于可能破坏输出数据,所以在接近转换完成时要小心防止CS被拉至低电平。

时序图如图2。

  

  三、应用介绍

  3.1TLC1549的理想转换特性如图3所示。

(1)此曲线基于下列假设:

VREF+和VREF-已被调整以便从数字0至1跳变的电压(VZT)为0.0024V,满度跳变电压(VFT)为4.908V。

1LSB=4.8mV。

  

(2)满度值(VFS)是指其额定中点(midstep)值具有最高的绝对值的那级台阶。

零度值(VZS)是指其额定中点(midstep)值等于零的那级台阶。

四、电路的制作、调试

1、硬件制作

硬件电路主要有单片机最小系统、LM35为核心的传感器电路、动态扫描显示电路、和供电电路组成。

单片机最小系统:

控制A/D转换并读取数据,然后对数据进行处理后得到温度的数值,最后将温度值送到LCD显示。

LM35传感器电路:

该传感器电路把温度大小变为模拟量输出。

动态扫描显示电路:

用的是四位共阳LED数码显示管,用的PNP型三极管8550的开关特性实现动态扫描

A/D转换电路:

为了节省IO口,本电路采用串行A/D转换芯片TLC1549,它不但具有单数据线通信的特点,而且还不需要提供额外的工作时钟信号。

运算放大电路:

由于LM35输出的电压值较小,因此需要将其放大。

本电路采用高精度、低漂移的运算放大器OP07。

供电电路:

利用7805组成线性稳压电源为整个系统供电

测试LM35及运放:

对LM35进行测试时使用单电源模式,並且将输出以非反相放大器放大十倍,如图4的电路。

以10Hz的频率记录放大后的电压值,得到如图5的温度-时间图。

图4

图5

具体电路连接见附图SCH电路原理图,硬件接线正确,单片机能构正常工作,硬件调试成功

2、软件调试

这是整个设计制作的关键要写好软件,首先要了解A/DTLC1549的时序图,TLC1549有严格的时序要求的要求.其时序图如下:

软件流程图:

源程序:

#include<

reg52.h>

#defineuintunsignedint

#defineucharunsignedchar

sbitcs=P1^5;

sbitout=P1^6;

sbitcl=P1^7;

voidDelayMS(unsignedintT)

{

for(;

T>

0;

T--);

}

ucharcodetable[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};

uinta1,a2,a3,a4,a5,a6,a7,a8,b1,b2,c1,c2,c3,c4,n;

floatsum,dsum;

voiddelay(uintz)//子函数

{

uintx,y;

for(x=z;

x>

x--)

for(y=100;

y>

y--);

}

voidmain()

cs=1;

cl=0;

out=1;

cs=0;

DelayMS(500);

while

(1)

{

cl=0;

a8=out;

cl=1;

a7=out;

a6=out;

a5=out;

a4=out;

a3=out;

a2=out;

a1=out;

b1=out;

b2=out;

cs=0;

sum=(a8*128+a7*64+a6*32+a5*16+a4*8+a3*4+a2*2+a1);

dsum=(sum/256)*1000;

c1=(int)(dsum/100);

c2=(int)((dsum-c1*100)/10);

c3=(int)(dsum-c1*100-c2*10);

c4=(int)((dsum-c1*100-c2*10-c3)*10);

for(n=0;

n<

=5;

n++)

{

P2=0xfe;

P0=table[c1];

delay(10);

P2=0xfd;

P0=table[c2];

P2=0xfb;

P0=table[c3];

P2=0xf7;

P0=table[c4];

P2=0xff;

}

}

}

五、参考文献

1、《测控电路》第三版,张国雄主编,机械工业出版社,2008.1

2、《现代传感器集成电路》赵负图主编,,人民邮电出版社,2000.1

3、《测控电路设计型实验任务书》,自编

4、《单片机C程序设计应用实例》胡伟季晓衡主编,人民邮电出版社,2004.4

附录

心得

这次测控电路的课程设计令自己学到的很多东西!

涉及了很多自己还没有了解到的领域!

例如在传感器,单片机等等!

经过了几天的努力终于把作品做出来了!

真的很感谢各位队友!

在制作过程中遇到了一些困难,如显示乱码等。

在各位队友的合作下,通过查资料,讨论。

最后还经过了努力,还是把作品做出来了!

这几天的辛苦都是值得的!

在测试之前,大家的心情多么的紧张的,成功的之后大家的心情是多么的兴奋!

在这次的设计中,我了解到单片机的功能的强大!

对它产生了兴趣!

我想这次的课程设计对我日后每个方面都有着很好的帮助的

.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2