数字温度计的设计与测量

数字温度计的设计与测量

ID:15466528

大小:266.00 KB

页数:7页

时间:2018-08-03

数字温度计的设计与测量_第1页
数字温度计的设计与测量_第2页
数字温度计的设计与测量_第3页
数字温度计的设计与测量_第4页
数字温度计的设计与测量_第5页
资源描述:

《数字温度计的设计与测量》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数字温度计的设计与测量摘要:根据8051的特点及APD转换器的原理,实现温度测量的数字化和自动化.并且熟悉数字温度传感器DS18B20的使用,掌握用单片机口线进行1-wire串行通信的方法;根据DS18B20工作时序要求进行程序设计,能够通过软件调试正确得到采集的温度值;将单片机采集温度程序和显示程序结合起来,通过系统软硬件整体调试正确得到采集的温度值并进行显示。关键词:8051单片机;数字温度计;APD转换;温度传感器;数码管正文:温度测量涉及各行各业,而传统的温度测量仪器有酒精温度计、煤油温度计、水银温度计等,都需人工手动测量.在科学技术

2、发展的今天很多场合(有毒、高温、无人等),用传统的温度测量技术就显得比较麻烦.单片机的出现,电子技术的飞速发展,使温度计的自动化、数字化就变得容易实现.本文着重研究用单片机控制的数字温度计,采用LED七段数码管显示温度值,实现一目了然的测量被测物的温度大小.设计一个8051单片机控制的数字式测温仪,测量温度0℃~50℃,并要求将温度在两个数码管上显示,分别显示十位数和个位数,最小温度变化量为1℃,每变化一个温度值在数码管上显示6秒.硬件结构如下所示制做简单的电路板,电路图如下所示关于A/D转换单元,由ADC0809转换器及温度传感器电路组成.

3、温度传感器电路如图2示,RT为热敏电阻,起检测被测物温度的作用,将温度物理量变成电压物理量.而ADC0809是8位APD转换器,将温度传感器得到的模拟信号变成数字信号送入CPU.从图2可知APD转换器的模拟输入端电压:Vi=15R8P(R8+RT),由热敏电阻特性可知,温度越高阻值越小,而获得的模拟电压值越高.因ADC0809具有通道地址锁存功能,所以这里采用P0.0~P0.2直接与模拟输入通道地址译码输入A、B、C相接.模拟电压Vi从IN0输入,因此模拟通道地址为F7F8H.转换典型时钟频率为640KHz,由于ADC0809内部无时钟电路,

4、在此通过8051的ALE端提供时钟信号.P0口也作为ADC0809的数据口用,数据信号就是通过P0口送到8051内部进行处理的.关于显示接口单元,由两个七段数码管显示器及一块七段锁存—译码—驱动器组成,并用P1口作十进制调整后的二—十进制数的输出口及显示控制口.而数据信号只用上了P1.0~P1.3,P1.4和P1.5用作显示控制信号端.4位BCD码再经CD4511转换成七段显示码去驱动两个共阴七段数码管.通过计算机进行编程如下所示数值转换程序XJM:  MOV DPTR,#DATA1;取表首地址MOV R5,AMOV R6,#00HLOOP:

5、 CLR AMOVC A,@A+DPTR;查表CLR C;清借位零SUBB A,R5;比较MOV A,R6JNC JM1ADDC A,#1DA A;温度值十进制调整MOV R6,AINC DPTR;取下一个表地址AJMP LOOP;进行下一次比较JM1: RETA/D输出值对照表:DATA1:  58———0℃61———1℃63———2℃  :  :255———50℃A/D转换程序START:  MOV DPTR,#F7F8H;发APD启动脉冲MOVX@DPTR,AMOV30H,#0AHDELY:  DJNZ 30H,DELY;延时,等EOC

6、变为低电平WEND:  JBP3.3,WEND;查APD转换结束否MOVX A,@DPTR;若结束,读取APD转换值ACALL XJM;调数值转换子程序  :  :显示程序MOV R0,AANL A,#0FH;取低四位值ORL A,#0E0HMOV R3,A;送个位数字到R3中MOV A,R0RR A;右移四位(高低四位交换位置)RR ARR ARR AANL A,#0FHORL A,#0D0HMOV R4,A;送十位数字到R4中   :   :如果用C程序则如下所示#include#include#d

7、efineucharunsignedchar#defineuintunsignedintsbitDATA=P3^7;//DS18B20接入口ucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};charbai,shi,ge;//定义变量/*延时子函数*/voiddelay(uintnum){while(num--);}/*************DS18b20温度传感器函数**************

8、*******/Init_DS18B20(void)//传感器初始化{ucharx=0;DATA=1;//DQ复位delay(10);//稍做延时DATA=0;//

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。