数字温度计的设计.docx

上传人:b****4 文档编号:6274740 上传时间:2023-05-09 格式:DOCX 页数:43 大小:437.37KB
下载 相关 举报
数字温度计的设计.docx_第1页
第1页 / 共43页
数字温度计的设计.docx_第2页
第2页 / 共43页
数字温度计的设计.docx_第3页
第3页 / 共43页
数字温度计的设计.docx_第4页
第4页 / 共43页
数字温度计的设计.docx_第5页
第5页 / 共43页
数字温度计的设计.docx_第6页
第6页 / 共43页
数字温度计的设计.docx_第7页
第7页 / 共43页
数字温度计的设计.docx_第8页
第8页 / 共43页
数字温度计的设计.docx_第9页
第9页 / 共43页
数字温度计的设计.docx_第10页
第10页 / 共43页
数字温度计的设计.docx_第11页
第11页 / 共43页
数字温度计的设计.docx_第12页
第12页 / 共43页
数字温度计的设计.docx_第13页
第13页 / 共43页
数字温度计的设计.docx_第14页
第14页 / 共43页
数字温度计的设计.docx_第15页
第15页 / 共43页
数字温度计的设计.docx_第16页
第16页 / 共43页
数字温度计的设计.docx_第17页
第17页 / 共43页
数字温度计的设计.docx_第18页
第18页 / 共43页
数字温度计的设计.docx_第19页
第19页 / 共43页
数字温度计的设计.docx_第20页
第20页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数字温度计的设计.docx

《数字温度计的设计.docx》由会员分享,可在线阅读,更多相关《数字温度计的设计.docx(43页珍藏版)》请在冰点文库上搜索。

数字温度计的设计.docx

数字温度计的设计

数字温度计的设计

摘要:

温度计在实际生产和人们的生活中都有广泛应用,为此我选择了设计一个数字温度计。

本设计以STC89C52单片机为核心,DS18B20数字式温度传感器为温度传感器,74HC573锁存器及数码管构成显示电路。

单片机控制DS18B20进行温度采集,在接收到DS18B20传回数据后进行处理,通过74HC573锁存器及数码管显示实时温度的动态显示。

由于采用的是可编程器件作为控制核心,与传统的温度计相比该温度计具有示数直观,精度可调,功能易扩展等优点。

关键词:

数字温度计,单片机,DS18B20

Abstract:

Thermometerintheactualproductionandpeople'slivesarewidelyused,andIchosetodesignadigitalthermometer.ThedesignSTC89C52MCUcore,DS18B20digitaltemperaturesensorforthetemperaturesensor,74HC573latchanddigitaltubedisplaycircuitform.SCMDS18B20fortemperatureacquisition,inreturnreceivingDS18B20dataprocessing,throughthe74HC573latchandthedigitaldisplayreal-timedynamicdisplayoftemperature.Asaresultoftheprogrammabledeviceasthecontrol,comparedwiththetraditionalthermometerthermometerhasindicatedthatthenumberofintuitive,precisionadjustable,featureseasytoexpandandsoon.

Keywords:

Digitalthermometer,MCU,DS18B20

1前言

随着“信息时代”的到来,作为获取信息的手段——传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。

传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。

因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。

而温度传感器在生产和生活中有广泛应用,对其的了解及应用就显得更为重要了。

1.1设计背景

随着人们生活水平的不断提高,数字化无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,一切向着数字化控制,智能化控制方向发展。

数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用。

温度计是常用的热工仪表,常用于工业现场作为过程的温度测量。

在工业生产过程中,不仅需要了解当前温度读数,而且还希望能了解过程中的温度变化情况。

随着工业现代化的发展,对温度测量仪表的要求越来越高,而数字温度表具有结构简单,抗干扰能力强,功耗小,可靠性高,速度快等特点,更加适合于工业过程中以及科学试验中对温度进行在线测量的要求。

近年来,数字温度表广泛应用在各个领域,它与模拟式温度表相比较,归纳起来有如下特点。

⑴准确度高,⑵测量范围宽、灵敏度高,⑶测量速度快,⑷使用方便、操作简单,⑸抗干扰能力强,⑹自动化程度高,⑺读数清晰、直观方便。

数字温度计的高速发展,使它已成为实现测量自动化、提高工作效率不可缺少的仪表。

数字化是当前计量仪器仪表发展的主要方向之一。

而高准确度数字温度计的出现,又使温度计进入了精密标准测量领域。

与此相适应,测量的可靠性、准确性显得越来越重要。

1.1.1设计相关技术简介

整个电路由电源电路,测温电路,中央处理电路,显示电路等部分组成。

测温电路对外界温度进行检测,输出与温度相对应的数据传至单片机,单片机将数据处理后控制显示电路将温度以十进制形式显示在数码管上。

整个电路主要应用了数字温度传感技术,单总线传输技术,数码管动态显示技术等。

1.1.2该技术的特点

这里介绍的数字温度传感器精度最高可达0.0625℃,在与微处理器连接时仅需要一条端口线即可实现微处理器与DS18B20的双向通讯,同时利用锁存器实现了数码管动态显示温度值,因此可实现高精度测温,且节省了单片机I/O口,使得更易于进一步扩展电路功能。

1.2设计概述

本电路为一数字式温度测量及显示电路。

上电后系统进入工作状态,单片机控制数字温度传感器DS18B20进行温度测量,并接收其传回的二进制温度数据,将数据处理后通过数码管以十进制的形式显示出实时温度。

1.2.1设计目标

通过数字式温度传感器测温,将电路设计为测温范围为0℃~+99.9℃,精确到十分位,具备3位数值显示功能的数字温度计,温度计实时显示当前室温或待测物温度。

1.2.2技术路线

为实现整个设计,先将设计划分为几个模块:

电源模块,测温模块,中央处理模块及显示模块。

然后分别完成各模块原理图及程序设计,最后连接各模块电路,整体调试,在51单片机开发板上验证设计结果。

1.2.3实施计划

首先就是要理清实现设计的框图,在总体框图的指导下,参考模板作出具体的电路图,由要设计实现的功能,按照元件资料确定各个电路元件的值,并逐一对各个元件进行选择。

最后用仿真软件对设计进行仿真操作,调试软件,并对照出的设计有误的地方进行必要的修正,确保设计的正确。

1.2.4必备条件

要实现该电路的设计,首要的就是要制定出设计的实现框图,并在老师的指导和参照资料的条件下作出具体电路图,选定实现该设计的各种元器件。

另外,还应应用必要的仿真及单片机程序编译软件。

2

总体方案设计

通过查阅大量相关技术资料,并在老师的指导下,使我对整个电路系统有了一个比较全面的了解。

本设计主要是实现模拟量温度的采集,然后使其转换为数字量,最后将其转化为直观的十进制示值。

2.1方案比较

对同一种目的的实现,可以用不同的方案,下面就着重介绍以下两种方案对同一目的的实现方法。

并比较两种方案的优劣。

2.1.1方案一

原理框图如图2.1:

图2.1方案一的原理框图

方案一的原理简述:

该方案的各部分电源均由总电源供电,温度传感器为热电偶,热电偶的热端感受被测物体温度t,产生相应的热电势。

热电势与热端温度成单值函数关系,用模数转换器ADC将热电势转化为数字量,按照热电势与温度的函数关系将该数字量转换为对应温度值,经译码显示电路显示在数码管上,从而实现数字温度计的功能。

2.1.2方案二

原理框图如图2.2:

图2.2方案二的原理框图

方案二的原理简述:

该方案的各部分电源均由总电源供电,51单片机作为中央处理器及控制核心,控制数字温度计采集温度,数字温度传感器在采集到温度后直接输出数字量,传给单片机进行处理,单片机将传回的二进制数据处理后转换为相应温度,由译码显示电路以十进制形式显示在数码管上。

2.1.3方案三

原理框图如图2.3:

图2.3:

方案三的原理框图

方案二的原理简述:

该方案的各部分电源均由总电源供电,由模拟及数字元器件组成的控制电路作为核心,控制数字温度计采集温度,数字温度传感器在采集到温度后直接输出数字量,传给控制电路进行处理,控制电路将传回的二进制数据处理后转换为相应温度,由译码显示电路以十进制形式显示在数码管上。

2.2方案论证

以上三种方案都是可行的,第一种方案的优点是由纯硬件电路构成,不涉及软件编程,但是由于热电势与温度之间的函数关系较复杂,利用硬件电路完成其转化较复杂,设计该电路难度较大且电路将比较庞大。

第二种方案的难点主要是单片机程序编制,但其硬件电路相对简单,借助于微控制器的强大功能可使设计周期缩短,测量精度高,且易于扩展功能,增强了电路对各种工作要求的适应性。

第三种方案的优点是由纯硬件电路构成,不涉及软件编程,但是数字式温度传感器的工作涉及复杂的时序,用硬件电路实现将十分复杂,电路设计难度大且电路庞大。

2.3方案选择

考虑到自己先前自学过单片机知识,对单片机有一定了解以及电路的灵活性和适用性,经过上面三个方案的分析,第二个方案的可行性高,所以我选择第二个方案做为设计方案。

在第二个方案中,数字式温度传感器和单片机起着主导作用,单片机控制传感器测温并将其传回的数据进行处理,通过改变程序,可改变测量精度及电路的功能,可实现设计要求。

3单元模块设计

本节主要介绍系统各单元模块的具体功能、电路结构、工作原理、以及各个单元模块之间的联接关系;同时本节也会对相关电路中的参数计算、元器件选择、以及核心器件进行必要说明。

3.1各单元模块功能介绍及电路设计

3.1.1电源电路

电源电路的种类繁多,如变压器降压;桥式整流全波整流;LC、RC滤波;三端稳压器稳压等。

具体采用什么电路合适,则根据主体电路及执行机构不同和可靠、价廉、有效益等要求进行选用。

电源的设计结构如下:

图3.1电源电路框图

图3.2电源部分连线图

电源电路中,CON1口接入经变压器降压的低压交流电,二极管D1、D2、D3、D4组成桥式整流电路,三端稳压器LM7805稳压,稳压后再进行一次滤波,发光二极管D5与电阻R1构成电源工作指示电路,R1起限流作用。

作为滤波电容的C1、C2、C3、C4取值均来自LM7805器件资料中典型应用电路。

电路通过CON2口输出稳定+5V供给整个系统。

3.1.2中央处理电路

图3.2中央处理电路

中央处理电路主要由时钟振荡电路,复位电路及STC89C52单片机构成,其中RP1为10kΩ的排阻,作为单片机P0口的上拉电阻。

中央处理电路控制数字温度传感器进行测温并对传回的数据进行处理,再控制显示电路将测得温度显示在数码管上。

3.1.3测温电路

图3.3测温电路

测温电路主要由数字温度传感器DS18B20构成。

DS18B20使用外部电源Vcc故其3脚接Vcc,I/O口2脚通过信号线与单片机相连,I/O口线要接5KΩ左右的上拉电阻。

测温电路完成温度的测量,将测得温度以二进制数据形式反馈给单片机进行处理。

3.1.4显示电路

图3.4显示电路

显示电路主要由74HC573锁存器及七段共阴数码管构成,实现数码管对测得温度值的动态显示。

74HC573桥接单片机和数码管,按程序锁存单片机输出的数码管段选及位选控制信号,与数码管共同实现数码管动态显示功能。

3.2电路参数的计算及元器件的选择

3.2.1电源电路

考虑到实用性及稳定性,电源采用变压器降压,三端稳压器稳压的线性直流电源。

根据输入电压、二极管的反向击穿电压、最大整流电流及惯例选择1N4007作为整流二极管,根据LM7805元件资料上给出的典型应用电路决定滤波电容容值:

C1=3300uf、C2=0.22uf、C3=470uf、C4=0.1uf。

3.2.2中央处理电路

考虑到功能、成本及自身的知识储备,我选择了价格低廉、功能相对强大的51系列单片机STC89C52作为中央处理电路的处理器。

中央处理电路主要由STC89C52单片机、时钟振荡电路及复位电路构成。

时钟振荡电路及复位电路的元件选择均根据资料,无需计算。

3.2.3测温电路

测温电路主要由数字温度计DS18B20构成,据其元件资料其数据端的上拉电阻应取5kΩ左右,取标称值4.7kΩ。

3.2.4显示电路

考虑到成本、实用性及可操作性显示电路部分的锁存器选择数电课堂中介绍过的74HC573,数码管选择七段共阴数码管。

3.3特殊器件的介绍

3.3.1STC89C52单片机特点及特性

STC89C52单片机具有PDIP,TQFP和PLCC三种封装形式。

设计中采用的是PDIP封装,其引脚排列如图3.5所示。

STC89C52单片机有40个引脚,具有如下特性:

片内程序存储器含有4KB的Flash存储器,允许在线编程,擦写周期可达1000次;片内数据存储器内含128字节的RAM;I/O口具有32根可编程I/O线;具有两个16位I/O线;中断系统具有6个中断源、5个终端矢量、2个中断优先级的中断结构;串行口是一个全双工的串行通信口;具有两个数据指针DPTR0和DPTR1;低功耗节电模式有节电模式和掉电模式;包含3级程序锁定位;STC89C52的电源电压为4.0-5.5V,STC89C52的电源电压为2.7-4.0V;振荡器频率0-33MHz(STC89C52);具有片内看门狗定时器;灵活的在线片内编程模式(字节和页编程模式);具有断电标志模式POF。

STC89C52引脚功能如下:

--P0口——8位、开漏极、双向I/O口。

--P1口——8位、双向I/O口、内部含有行拉电阻。

--P2口——8位、双向I/O口、内部含有行拉电阻。

--P3口——8位、双向I/O口、内部含有行拉电阻。

P3口除了通用I/O功能外,还有替代功能。

图3.5STC89C52单片机引脚图

3.3.2DS18B20介绍

DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。

因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。

1、DS18B20产品的特点

  

(1)、只要求一个端口即可实现通信。

  

(2)、在DS18B20中的每个器件上都有独一无二的序列号。

  (3)、实际应用中不需要外部任何元器件即可实现测温。

  (4)、测量温度范围在-55。

C到+125。

C之间。

  (5)、数字温度计的分辨率用户可以从9位到12位选择。

  (6)、内部有温度上、下限告警设置。

2、DS18B20的引脚介绍

  TO-92封装的DS18B20的引脚排列见图3.6,其引脚功能描述见表3.1。

图3.6DS18B20底视图

序号

名称

引脚功能描述

1

GND

地信号

2

DQ

数据输入/输出引脚。

开漏单总线接口引脚。

当被用着在寄生电源下,也可以向器件提供电源。

3

VDD

可选择的VDD引脚。

当工作于寄生电源时,此引脚必须接地。

表3.1 DS18B20详细引脚功能描述

3、DS18B20的使用方法

由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对STC89C52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。

由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。

DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。

该协议定义了几种信号的时序:

初始化时序、读时序、写时序。

所有时序都是将主机作为主设备,单总线器件作为从设备。

而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。

数据和命令的传输都是低位在先。

DS18B20的复位时序

(1)先将数据线置高电平“1”。

(2)延时(该时间要求的不是很严格,但是尽可能的短一点)

(3)数据线拉到低电平“0”。

(4)延时750us(该时间的时间范围可以从480到960us)。

(5)数据线拉到高电平“1”。

(6)延时等待(如果初始化成功则在15到60us时间之内产生一个由DS18B20所返回的低电平“0”。

据该状态可以来确定它的存在,但是应注意不能无限的进行等待,不然会使程序进入死循环,所以要进行超时控制)。

(7)若CPU读到了数据线上的低电平“0”后,还要做延时,其延时的时间从发出的高电平算起(第(5)步的时间算起)最少要480us。

(8)将数据线再次拉高到高电平“1”后结束。

DS18B20的读时序

  

(1)将数据线拉高“1”。

  

(2)延时2us。

  (3)将数据线拉低“0”。

  (4)延时15us。

  (5)将数据线拉高“1”。

  (6)延时15us。

  (7)读数据线的状态得到1个状态位,并进行数据处理。

  (8)延时30us。

DS18B20的写时序

  

(1)数据线先置低电平“0”。

  

(2)延时确定的时间为15us。

  (3)按从低位到高位的顺序发送字节(一次只发送一位)。

  (4)延时时间为45us。

  (5)将数据线拉到高电平。

  (6)重复上

(1)到(6)的操作直到所有的字节全部发送完为止。

  (7)最后将数据线拉高。

DS18B20数据输出与对应温度关系

DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:

用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。

LSB

23

22

21

20

2-1

2-2

2-3

2-4

MSB

MSbLSb

S

S

S

S

S

26

25

24

表3.2DS18B20温度值格式表

这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。

例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。

温度/℃

二进制表示

十六进制表示

+125

0000011111010000

07D0H

+85

0000010101010000

0550H

+25.0625

0000000110010000

0191H

+10.125

0000000010100001

00A2H

+0.5

0000000000000010

0008H

0

0000000000001000

0000H

-0.5

1111111111110000

FFF8H

-10.125

1111111101011110

FF5EH

-25.0625

1111111001101111

FE6FH

-55

1111110010010000

FC90H

表3.3DS18B20温度对应值表

3.3.374HC573介绍

74HC573为八进制三态输出透明D锁存器阵列,其引脚排列见图3.7,其中

为输出使能端,LE为锁存使能端,1D—8D为数据输入端,1Q—8Q为数据输出端,逻辑功能见表3.4。

74HC573内部共有八路D锁存器,每一路的逻辑图见图3.8。

图3.774HC573引脚图

输入

输出

Q

LED

LHH

LHL

LLX

HLX

H

L

Q0

Z

表3.474HC573功能表(每一路锁存器,表中Z为高阻抗)

图3.774HC573逻辑图

3.4各单元模块的联接

详见附录1

4软件设计

在本设计中用到了三种软件,一种是Proteus7Professional,主要用于设计原理图的绘制及电路仿真,一种是KeilC51编译系统,主要用于调试、编译STC89C52单片机程序,一种是STC-ISPV31,主要用于向单片机下载程序。

4.1主要软件设计流程

主要软件设计流程框图如图4.1:

图4.1主要软件设计流程图

4.2原理图的绘制与仿真

在设计过程中我主要使用Proteus7Professionalisis软件完成系统原理图的绘制与仿真。

Protues软件是英国Labcenterelectronics公司出版的EDA工具软件。

它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

它是目前最好的仿真单片机及外围器件的工具。

Protues可提供的仿真元器件资源:

仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。

Protues可提供的仿真仪表资源:

示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。

理论上同一种仪器可以在一个电路中随意的调用。

除了现实存在的仪器外,Protues还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。

这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。

这些都尽可能减少了仪器对测量结果的影响。

Protues可提供的调试手段Protues提供了比较丰富的测试信号用于电路的测试。

这些测试信号包括模拟信号和数字信号。

在PROTUES绘制好原理图后,调入已编译好的目标代码文件:

*.HEX,可以在PROTUES的原理图中看到模拟的实物运行状态和过程,不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。

前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果,它的元器件、连接线路等却和传统的单片机实验硬件高度对应。

这在相当程度上替代了传统的单片机实验教学的功能,例:

元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。

使用Protues对电路进行设计和实验仿真的基本步骤是:

1、用虚拟器件在工作区建立电路;

2、选定元件的模式、参数值和标号;

3、连接信号源等虚拟仪器;

4、选择分析功能和参数;

5、激活电路进行仿真;

6、保存电路图和仿真结果。

Protues是电子信息类专业经常用到的一种软件,很多地方都要用到来绘制原理图。

在这里进行一些简单的操作流程介绍。

首先,进入Protues的设计页面,按照设计框图找出设计中所需要的基本器件,如图4.2:

图4.2元器件的绘制与连线

原理图画好并设定参数后可点击“运行”按钮进行仿真,根据仿真图中元件各引脚电平变化及电路实现现象可以判断设计是否正确,如图4.3:

图4.3电路的仿真

4.3单片机程序的调试与编译

STC89C52单片机程序的调试与编译用到的编译系统是KeilC51。

KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

  

KeilC51工具包uVision是C51forW

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

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

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

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