基于单片机的多点温度测试系统.docx

上传人:b****5 文档编号:28676878 上传时间:2023-07-19 格式:DOCX 页数:47 大小:785.15KB
下载 相关 举报
基于单片机的多点温度测试系统.docx_第1页
第1页 / 共47页
基于单片机的多点温度测试系统.docx_第2页
第2页 / 共47页
基于单片机的多点温度测试系统.docx_第3页
第3页 / 共47页
基于单片机的多点温度测试系统.docx_第4页
第4页 / 共47页
基于单片机的多点温度测试系统.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

基于单片机的多点温度测试系统.docx

《基于单片机的多点温度测试系统.docx》由会员分享,可在线阅读,更多相关《基于单片机的多点温度测试系统.docx(47页珍藏版)》请在冰豆网上搜索。

基于单片机的多点温度测试系统.docx

基于单片机的多点温度测试系统

基于单片机的多点温度测试系统

 

摘要集成电路的大规模发展对单片机控制电路的实际运用有着巨大的推动作用。

单片机具有体积小、重量轻、价格便宜、低功耗、控制功能强及运算速度快等特点,使其在测控系统、智能仪表、机电一体化产品、智能接口等方面具有较广泛的运用。

以单片机为核心,应用温度传感器可完成对温度采集,并进行相应的处理。

本系统利用4片温度传感器DS18B20把所测得的温度发送到AT89C52单片机上,通过单片机的处理发送到显示单元进行显示。

系统运用单片机进行温度上下限设定,对各点温度进行测控报警,运用主从分布式思想,实现温度的远程控制,构成多点温度检测系统。

关键词单片机,温度传感器,多点温度检测

ABSTRACT

Thepracticalapplicationoflarge-scaledevelopmentoftheintegratedcircuitchipcontrolcircuithasatremendousroleinpromoting.MCUwithasmallsize,lightweight,inexpensive,low-power,controlandcomputingspeed,hasawideruseinthemonitoringandcontrolsystems,intelligentinstruments,mechanicalandelectricalintegrationproducts,intelligentinterface.Withthesinglechipprocessorasthecore,theapplicationoftemperaturesensorfortemperatureacquisitioncanbecompleted,andcarryoncorrespondingprocessing.

Thissystem,usingfourslicesofDS18B20,sentthetemperaturemeasuredbythetemperaturesensorDS18B20toAT89C52single-chipcomputer,throughtheMCUprocessing,thetemperatureissenttothedisplayunittodisplay.ThesystemusestheMCUtosetupperandlowertemperature,tomeasurethepointtemperature,andtocontrolalarm.Atthesametime,usethemaindistributedthoughttoachieveremotecontrolofthetemperature,andtoconstituteamulti-pointtemperaturedetectionsystem.

KeyWords:

MCU,Slice,Multi-pointtemperaturedetection

 

目录

1.绪论1

1.1课题背景1

1.2国内外发展现状1

1.3本设计的内容及任务2

1.3.1设计内容2

1.3.2设计任务2

2.系统总体设计3

2.1系统概述3

2.2系统工作原理3

2.3系统器件的选择4

2.3.1单片机的选择4

2.3.2温度传感器的选择5

2.3.3显示器的选择8

3.系统的硬件设计10

3.1单片机最小系统的设计11

3.1.1时钟电路的设计11

3.1.2复位电路的设计11

3.2温度采集模块的设计12

3.3LCD显示电路13

3.4键盘电路14

3.5声光报警电路15

4.系统的软件设计16

4.1工作方案简介16

4.2主程序流程图16

4.3温度读取转换模块17

4.4LCD液晶显示模块19

4.5按键处理模块20

4.6声光报警模块21

5.系统的软件仿真22

6.总结23

参考文献24

答谢25

附录1系统硬件原理图26

附录2程序设计26

1.绪论

1.1课题背景

随着现代科技的发展,温度成为了各行各业最普遍而重要的测量和控制参数。

温度的测量技术与和所处的环境密切相关,随着时代的进步,科技的发展,各行各业各行各业对温度的测试系统的要求也在不断提高以达到设备环境、生产流程的安全要求。

集成电路的大规模发展对单片机控制电路的实际运用有着巨大的推动作用。

单片机具有体积小、重量轻、价格便宜、低功耗、控制功能强及运算速度快等特点,使其在测控系统、智能仪表、机电一体化产品、智能接口等方面具有较广泛的运用。

以单片机为核心,应用温度传感器可完成对温度采集,并进行相应的处理。

所以基于单片机的多点温度测试系统被广泛用于工农业的控制过程中,既提高了产品的功能和质量,体统的抗干扰能力得到大幅提升,又降低了成本,同时也简化了设计,对提高控制效率,节约资源起到了重要作用。

1.2国内外发展现状

近年来,在温度的测控领域,多种新型的测量技术已经取得了重大突破,新一代温度测量元件正在不断出现和完善化,从晶体管测温元件到智能集成电路测温元件、核磁共振温度测量器、激光以及微波测温等等。

这种现象充分地表明了温度测量技术的发展已经进入到了一种新的时代,人们会随着身处的不同环境来选择不同的温度测控方式。

总的来说温度的测量发展可分为:

继续对传统的温度测量元件的不断完善;加强新原理、新材料、新加工工艺的开发;向智能化、集成化、适用化方向发展等。

而基于单片机检测温度的传感元件也不断更新,其中最有代表性的属DS18B20温度传感器。

DS18B20是美国MAXIM半导体器件公司的全子公司Dallas生产的一种但数据总线数字输出型全集成式智能温度传感器,其优点是集测温敏感元件及其A/D转换、运算处理、逻辑控制、ROM和RAM单元、I/O端口等电路模块全部集成在一块极小的半导体芯片上,简化了电路设计,与传统的温度传感器相比,新型的智能温度传感器具有微型化、低功耗、高性能、抗干扰能力强、易于与微处理器接口等优点。

基于单片机的智能温度检测技术具有广阔应用前景和巨大经济价值。

1.3本设计的内容及任务

1.3.1设计内容

要求利用单片机、传感器及其他所需器件设计一个多点温度测试系统,可以同时对多个点进行温度的检测和显示。

1.3.2设计任务

分为硬件设计和软件设计两方面任务。

硬件设计方面,选择控制器,进行硬件电路的设计,包括检测电路、提示电路、显示电路、外围辅助电路等;软件方面,利用C语言或者汇编语言编写程序,实现各功能测试。

具体要求能够做出实物,实现基本功能。

2.系统总体设计

2.1系统概述

单片机系统的设计,关键是系统内信号传输的问题。

因为单片机不能直接接受模拟量信号,所在在温度测量的环节必须对温度信号的性质进行确认,若采用以模拟量信号的基础的温度传感器作为温度采集端,则要考虑温度模拟量与数字量之间的转换,而直接用数字温度传感器作为温度的采集端,不仅可以简化电路设计,而且可以提高系统的稳定性。

在多点测温系统中,传统用模拟信号进过各种变换得到最终温度的方式正面临各类问题的挑战,而采用数字温度芯片DS18B20测量温度,其输出的信号是全数字化的,便于单片机处理及控制,省去了传统的测温方法的很多外围电路,使得测温系统体积较小,成本较低,且一个单片机芯片可连接多个温度传感器,实现多点温度的检测。

系统由数字温度计DS1820和微控制器AT89C52构成的温度测量装置,通过液晶显示器进行温度显示,并通过按键进行报警上下限设置,当温度超过设定范围时,声光报警系统会进行报警提示。

2.2系统工作原理

本系统利用4个温度传感器DS18B20把所测的温度发送到AT89C52,通过单片机的处理控制显示单元进行显示,并通过按键系统进行温度上下限设定,对各点温度进行声光测控报警。

系统运用主从分布式思想,实现温度的远程控制,构成多点温度检测系统。

系统的总体设计框图如图2-1所示

2-1系统总体设计框图

2.3系统器件的选择

一个单片机工作系统中芯片的性能,对单片机系统工作的稳定性显得尤为重要,在选择芯片时,既要考虑系统的成本,同时也要考虑所选芯片的实用性,使整个系统的性价比最高。

2.3.1单片机的选择

单片机的全称是单片微型计算机,又称MCU,是将计算机的基本部分微型化,使之集成在一块芯片上的微机,片内含有CPU、ROM、RAM、并行I/O接口、定时/计数器、A/D、D/A、中断控制、系统时钟及系统总线等[3]。

随着微电子设计技术及计算机技术的不断发展,单片机产品和技术日新月异。

目前,生产单片机的厂商有很多比较著名的有Intel、Philips、Microchip、Motorola、Atmel等半导体企业。

Intel公司生产的8051芯片,其结构合理,技术也比较成熟,此外还有一些厂家生产与MCS-51系列相兼容的芯片,例如Atmel公司生产的Atmel89系列单片机(简称89系列单片机),就是基于Intel公司的MCS-51系列而研制的,这是一种内部含Flash存储器的特殊单片机。

目前89系列单片机取代了传统的MCS-51系列单片机,成为了人们使用的主流单片机之一,虑到本系统是多路温度检测,显示及控制线路较多,所以选择性价比相对较高的AT89C52单片机。

AT89C52引脚图如图2-2所示。

图2-2AT89C52引脚图

2.3.2温度传感器的选择

目前市场上温度传感器的种类繁多,以普通传感器建立检测系统时,首先要建立传感器输出信号与被测物理量之间关系的数学模型,并在此基础上,设计出传感器接口电路,对传感器的输出信号进行A/D转换和补偿。

而智能温度传感器具有模拟量信号到数字量值的A/D转换,并且能够在程序控制下,设置A/D的精度,具有自己的指令系统,并且带有数据存储功能。

综上所述,选用智能温度传感器DS18B20不仅可以降低电路设计的难度,同时还可以提高所测温度的准确度,故可以选用四个数字温度传感器DS18B20组成温度的采集模块。

DS18B20是美国MAXIM半导体公司的全资子公司Dallas生产的一种单数据总线数字输出型全集成式智能温度传感器。

这种传感器既可以单只独立使用,易于与外部微处理器系统连接,进行交换数据;又可以多只联网使用,组成多点信息采集网络或综合信息处理系统,是一种典型的单芯片型智能传感器。

其引脚图如图2-3所示。

图2-3DS18B20引脚图

DS18B20有两种供电方式:

一是使用外接电源供电,它是最普通的供电方式,二是使用其内部的寄生电源供电,寄生电源方式是指DS18B20可以通过数据线为自身供电,即通过内部电容存储数据总线上电信号的能量来产生电能,为传感器工作供电。

DS18B20的工作步骤可分为三步:

第一步初始化DS18B20,发送“初始化脉冲”信号。

第二部执行DS18B20的“ROM操作命令”,并在其后跟随需要交换的数据。

第三部执行DS18B20的“功能操作命令”,并在其后跟随需要交换的数据[5]。

一般情况下,每次使用DS18B20时,都必须按照上述这三步的操作顺序访问DS18B20器件,不能缺少其中任何一个步骤,也不能变更这三个步骤的执行顺序。

否则,DS18B20不能做出正常响应。

DS18B20指令系统如表2-1所示。

表2-1DS18B20指令系统

指令

约定代码

功能

读ROM

33H

读DS18B20ROM中的编码(64位地址)

符合ROM

55H

匹配ROM命令用于选中指定的DS18B20器件,主机发送匹配ROM命令(后面跟随指定器件的64位ROM序列号),可以再单只或多只器件在线的情况下,准确定位指定序列号的DS18B20器件。

搜索ROM

0F0H

主机可以通过发送和执行“搜索ROM命令”,来识别这些单总线器件的序列号,确定在线的DS18B20器件的数量和类型。

跳过ROM

0CCH

忽略64位ROM地址,直接向DS18B20发温度转换温度,适用单片机工作。

告警搜索命令

0ECH

执行后,只有温度超过设定值上限或下限时单片机作出反应。

温度转换

44H

命令DS18B20启动对温度温度传感器所测得温度数值进行A/D转换,转换后的数字温度数据保存在便笺式暂存器中的温度寄存器中。

读寄存器

0BEH

读内部RAM中9字节的内容。

写寄存器

4EH

用于使主机向DS18B20片内暂存器写入3个字节的数据,写入过程必须从低字节向高字节顺序进行。

复制寄存器

48H

将内部RAM的第3,4字节的内容复制到EPRAM中。

复制EPRAM

0B8H

将EPRAM中内容恢复到RAM的第3,4字节。

读供电方式

0B4H

此命令用来使主机知晓DS18B20当前使用的电源供电方式,寄生供电时DS18B20发送“0”,外接电源供电DS18B20发送“1”。

DS18B20主要功能参数如下:

1)测温范围:

-55~+125℃;在-10~+85℃范围内,测温精度为±0.5℃。

2)温度转换精度:

A/D转换精度分为4级,各级转换精度对应的输出信号的码位,从低到高分别为:

9位,10位,11位,12位。

但DS18B20初次上电时默认的温度转换精度为12位码。

3)测温读数分辨力:

9位转换精度时为0.5℃;10位转换精度时为0.25℃;11位转换精度时为0.125℃;12位转换精度时为0.0625℃。

4)测温A/D转换时间:

9位精度时为93.75ms;10位精度时为187.5ms;11位精度时为375ms;12位精度时为750ms。

5)可以设定报警温度的上下门限值,保存在EEPROM中。

6)电源电压适用范围:

3.0~5.5V。

2.3.3显示器的选择

由于本系统要同时对采集的四路温度进行显示,如选用数码管显示,所需的数码管较多,而使用液晶在显示器可以满足同时对多路温度进行显示的需求。

液晶显示(LCD)是单片机应用系统的一种常用人机接口形式,其优点是显示质量高、数字式接口、体积小、重量轻、功耗低。

广泛使用的点阵字符式液晶显示模块LCD1602有控制器HD44780、驱动器HD44100和液晶板组成。

LCD1602模块为2×16字,芯片工作电压为(4.5~5.5)V,工作电流为2.0mA(5.0V),模块最佳工作电压为5.0V,字符尺为2.95×4.35(W×H)mm。

其外形如图2-4所示。

图2-4LCD1602模块外形

LCD1602模块使用时要先进行初始化,初始化内容为清屏、功能设置、显示与不显示设置、输入模式设置,LCD1602第一行字符地址为00H~0FH、第二行字符地址为40H~4FH,如要输入字符,则应先确认输入字符的地址。

LCD1602模块的控制是通过操作命令完成的。

共有11条命令,如表2-2所示。

表2-2LCD1602操作指令

序号

指令

RS

R/W

D7

D6

D5

D4

D3

D2

D1

D0

1

清屏

0

0

0

0

0

0

0

0

0

1

2

光标归为

0

0

0

0

0

0

0

0

1

*

3

输入模式设置

0

0

0

0

0

0

0

1

I/D

S

4

显示与不显示设置

0

0

0

0

0

0

1

D

C

B

5

光标或屏幕内容移位选择

0

0

0

0

0

1

S/C

R/L

*

*

6

功能设置

0

0

0

0

1

DL

N

F

*

*

7

CGRAM地址设置

0

0

0

1

CGRAM地址

8

DDRAM地址设置

0

0

1

DDRAM地址

9

读忙标志和计数器地址设置

0

1

BF

计数器地址

10

写DDRAM或CGROM

1

0

要写的数据

11

读DDRAM或CGROM

1

1

读出的数据

命令说明:

命令1:

清屏(DDRAM全写空格)。

光标回到主屏幕左上角,地址计数器设置为0。

命令2:

光标归位。

光标回到主屏幕左上角。

命令3:

光标和显示模式设置。

I/D:

光标移动方向,高电平右移,低电平左移。

S:

屏幕上的文字是否左移或者右移,高电平表示有效,低电平则无效。

命令4:

显示与不显示设置。

D:

显示的开与关,为1表示开显示,为0表示关显示。

C:

光标的开与关,为1表示有光标,为0表示无光标。

B:

光标是否闪烁,为1表示闪烁,为0表示不闪烁。

命令5:

光标或屏幕内容移位选择。

S/C:

为1时移动屏幕内容,为0时移动光标。

R/L:

为1时右移,为0时左移。

命令6:

功能设置。

DL:

为0时设为4位数据接口,为1时设为8位数据接口。

N:

为0时单行显示,为1时双行显示。

F:

为0时显示5×7点阵,为1时显示5×10点阵。

命令7:

CGRAM地址设置,地址范围00H~3FH(共64个单元,对应8个自定义字符)。

命令8:

DDRAM地址设置,地址范围00H~7FH。

命令9:

读忙标志和计数器地址。

计数器地址范围00H~7FH。

命令10:

写DDRAM或CGROM。

要配合地址设置命令。

命令11:

读DDRAM或CGROM。

要配合地址设置命令。

3.系统的硬件设计

一个多路温度采集系统,包括多路温度信息的采集、转换、显示等环节。

本系统主要包括微处理器、四路温度的采集器、显示电路、复位电路、时钟电路、键盘电路、声光报警电路等。

3.1单片机最小系统的设计

单片机最小系统,是组成一个独立工作的单片机系统是,芯片和连接各芯片之间的总线少的不能再少。

一般情况下包括:

单片机、时钟电路、复位电路。

3.1.1时钟电路的设计

在AT89C52的引脚XTAL1和XTAL2端外接晶体振荡器(简称晶振),就构成了内部震荡方式,时钟电路如图3-1所示,其中电容C1和C2的作用是稳定频率和快速起振,典型值为30pF,晶振CYS的震荡频率要小于12MHZ,典型值为6MHZ、12MHZ或11.0592MHZ,由于本系统要与PC机通信,所以应选择11.0592MHZ的晶振,这样便于将波特率设定为标称值。

图3-1时钟电路

3.1.2复位电路的设计

复位是使单片机获系统中的其他部件处于某种确定的初始状态。

单片机上电后首先从复位操作开始。

单片机的复位是通过复位电路实现的,在实际应用中,复位操作有两种方式形式:

一是上电复位,二是按键复位。

本系统采用按键复位。

复位信号变低电平时,单片机开始执行程序。

复位电路如图3-2所示,按键复位支路由按键RESET,电阻R1,R2组成,电路的参数为:

R1=470Ω,R2=200Ω。

通过电路分析可知,在单片机运行期间,当RESET按键按下时,按键接通相当于短路,电容C3的电压不能跃变,RST引脚获得高电平信号,随着电容C3的放电,RST引脚的电平将逐渐下降,两个机器周期后单片机就执行复位操作。

图3-2复位电路

3.2温度采集模块的设计

本系统将四个DS18B20的DQ端子分别接在单片机的P1.0~P1.3口上,通过单片机发送指令分别对每个温度传感器进行读写操作,这样可以跳过读每个DS18B20的序列号而直接进行温度的读写,从而实现多点温度检测系统。

DS18B20有三个引脚,其中两根是电源线VDD和GND,另外一根用作总线DQ(DataIn/Out),其输入和输出均是数字信号,与TTL电平兼容,因此其可以与微处理器直接进行接口,从而省去了一般传感器所必需的中间转换环节。

四片DS18B20采用外接独立电源供电,这使DS18B20的工作稳定,并使测控系统可以随时侦测DS18B20的工作状态,做出适时的指令操作。

DS18B20的接口电路如图3-3所示。

图3-3DS18B20的接口电路

3.3LCD显示电路

本系统通过P0口来连接LCD1602的D0~D7,采用8路10KΩ的排阻限流,P2.5~P2.7口分别连接1602的RS、R/D、E,通过这三个引脚来控制1602的读写。

四路温度同时显示在1602上,便于读数,接口电路如图3-4所示。

图3-4LCD1602接口电路

3.4键盘电路

控制电路是一个单片机系统必不可少组成部分,本系统在运行的过程中会根据外部环境的变化对温度报警的上下限进行设置,故把单片机的P3.3~P3.7口作为控制按钮的输入端,它们在运行中对应的功能分别为设置温度报警上限、设置温度报警下限、温度值加1、温度值减1和退出。

当有按键按下时,单片机对应的端口会被置0,单片机会做出相应的响应,并通过LCD1602进行显示。

键盘电路如图3-5所示。

图3-5键盘电路

3.5声光报警电路

由于本系统设有报警系统,单片机需对温度传感器所测得的温度进行检测,并与设定的温度上限县进行比较,当发现所测温度超出所设定温度值的范围时单片机发出报警信号。

声光报警电路如图3-6所示,通过P1.7口来控制蜂鸣器报警,通过P2.1~P2.4来控制四只不同颜色的发光二极管,四只发光二极管对应四只DS18B20温度传感器,单片机复位后P1口输出高电平,四只二极管被点亮,当某只温度传感器超出温度范围时,相应的控制端口置0,熄灭发光二级管进行报警提示,同时蜂鸣器会响起。

图3-6声光报警电路

4.系统的软件设计

4.1工作方案简介

软件程序是一个单片机系统正常工作的核心,单片机根据程序来执行相关指令,使系统实现所有的预定功能。

本系统通电以后进行复位初始化操作,四路DS18B20测取个路温度送入LCD液晶屏显示,再启动报警系统对路温度进行检测,观察是否有温度超出设定的温度范围,如果有,则启动报警,同时提示电路进行提示,单片机随时对按键系统(温度上下限的设定)进行检测,当发现有控制按钮按下时,对相应的按键进行响应,设置温度检测的上下限,再与设定温度进行对比,检测温度。

整个系统进行循环工作。

4.2主程序流程图

程序处理是整个系统的关键,即简洁的硬件结构是靠复杂的软件来支持的。

主程序的主要功能是负责读出并处理DS18B20的测量温度值、温度值的实时显示及报警功能。

本系统采用自顶向下循环执行程序设计,模块化程序设计,单片机带有复位功能,当系统运行出现错误时,可以通过复位操作对整个系统进行复位。

根据对以上流程图的分析系统软件设计可分为温度的读取转换模块、LCD温度显示模块、按键处理模块和报警模块几个部分。

图4-1主程序流程图

4.3温度读取转换模块

四路温度采集传感器分别接在单片机的P1.0~P1.3口,可以从四个口读取温度,在读取温度时可以跳过读ROM命令,DS18B20操作命令可以分为四步:

复位命令、跳过读ROM命令、读RAM命令和数据交换命令。

再执行完以上四步以后,单片机判断温度符号,送入LCD液晶屏显示。

流程图如图4-2所示。

图4-2温度读取转换流程图

1)复位和应答脉冲时隙

首先,主机发送“复位脉冲”(低电平),将DS18B20的DQ总线下拉为低电平,并保持480μs以上,之后主机释放数据线并转入接收状态;由上拉电阻将DQ总线拉至高电平,与此同时,DS18B20开始检测脉冲电平的上升沿,这个过程大约延迟15~60μs,完成此操作后DS18B20发送存在

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

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

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1