基于单片机温度检测系统设计毕设论文Word文档下载推荐.docx
《基于单片机温度检测系统设计毕设论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于单片机温度检测系统设计毕设论文Word文档下载推荐.docx(26页珍藏版)》请在冰豆网上搜索。
随着温度控制器应用范围的日益广泛和多样性,各种适用于不同场合的智能温度控制系统应运而生。
1.1设计目的
本设计的内容是温度测试控制系统,控制对象是温度,温度控制在日常生活及工业领域相当广泛,比如温度,水池,发酵缸等场所的温度控制。
而以往温度控制是由人工完成的而且不够重视,其实在很多场所温度都需要监控以防止意外发生。
针对此问题,本系统设计的目的是
本课题综合了现代测控技术、电子信息、计算机技术专业领域方方面面的知识,具有综合性、科学性、代表性,可全面检验和促进学生的理论素养和工作能力。
掌握一个显示屏和一个温度传感器的原理、性能、使用特点和方法,利用单片机对系统进行编程。
实现一种可连续高精度调温的温度控制系统,它应用广泛、功能强大、小巧美观、便于携带,是一款既实用又廉价的控制系统。
本课题的研究可以使学生更好的掌握基于单片机应用系统的分析与设计方法,培养创新意识、协作精神和理论联系实际的学风,提高电子产品研发素质、增强针对实际应用系统设计制作的能力。
1.2设计产品功能
通过搭建51单片机最小系统及周边电路,可是本产品具有以下功能及特点:
1.实现温度计功能,可实现实时显示和报警。
2.实现数字万年历功能。
3.所有I/O口全部引出,方便进行二次开发。
第二章总体设计方案
温度检测系统有着共同的特点:
测量点多,环境复杂,布线分散,现场离控制室远等。
若采用一般温度传感器采集温度信号,则需设计信号调理电路,A/D转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。
这样,由于各种因素会造成检测系统较大的偏差;
又因检测环境复杂,测量点多,信号传输距离远及各种干扰的影响,会使检测系统的稳定性和可靠性下降,所以温度检测系统的设计关键在于两部分:
温度传感器的选择和主控单元的设计。
温度传感器应用范围广,使用数量庞大,也高居各类传感器之首。
首先由温度传感器DS18B20采集温度数据,经AT8C52单片机中进行运算处理,并液晶屏显示当前温度,由单片机控制是否发出控制信号及报警信号,从而实现恒温监控。
在整个过程中,温度始终得以显示,设定温度过程中显示设定温度值,以便于操作。
设定完毕后,改为显示当前测定温度值。
本系统的电路设计主要有六部分主成:
主控制部分芯片采用单片机AT89C51
显示部分采用1602液晶显示屏实现;
温度采集部分采用DS18B20温度传感器;
报警部分蜂鸣器的使用;
供电部分;
独立按键部分用于控制万年历
1.主控制部分
此部分是电路的核心部分,系统控制采用了单片机AT89C51,有Atmel公司生产的AT89C51是一种低功耗,高性能的微控制器,具有8K在线系统可编程Flash存储器,单片机AT89C51具有低电压供电和体积小等特点,四个端口只需要两个就能满足电路系统的设计要求,很适合便携手持式产品的设计使用
2.显示电路
采用技术成熟,价格便宜的1602液晶显示器作为输出显示。
本次设计使用的1602液晶显示器为5V电压驱动,带背光,可显示两行,每行16个字符,不能显示汉字,内置128个字符的ASCII字符集字库,只有并行接口,无串口接口。
3.温度采集部分
DS18B20温度传感器是美国DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
可直接读出被测温度。
这一部分主要完成对温度温度信号的采集和转换工作,由DS18B20数字式温度传感器及其与单片机的接口部分主成,DS18B20数字式温度传感器把采集到的温度通过数据引脚传到单片机接受温度并存储,此部分只用到DS18B20和单片机,硬件很简单。
DS18B20数字式温度传感器通常采用两种方式供电,一种是寄生电源供电方式,另一种是采用外部电源供电方式,此时DS18B20的1引脚接地,2引脚作为信号线,3引脚接电源,本设计采用外部供电方式,外部电源供电方式是
DS18B20最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,可以开发出稳定可靠的多点温度监控系统。
图2-2DS18B20与单片机接口电路
4.报警部分
此处三极管选取型号为8550的PNP型三极管,管脚排列见下图
图2-3蜂鸣器电路
5.独立按键部分
图2-4独立按键电路
6.单片机最小系统
图2-5最小系统
第三章温度控制系统设计基础
3.1温度传感器的历史发展
温度的测量是从热胀冷缩开始,水银温度计至今仍是各种温度计测量的计量标准,可是它的缺点是只能近距离观测,而且水银有毒玻璃管易碎,代替水银的有酒精温度计和金属簧片温度计,它们虽然没有毒性,但测量精度较低,只能作为一个概略指示,不过在居民宅中使用已可满足要求,在工业生产和实验研究中心为了配合远传仪表指示,出现了许多不同的温度检测方法,常用的有电阻式、热电偶式、PN结型、辐射型、光纤式及石英谐振型等。
它们都是基于温度变化引起其物理参数的变化的原理。
随着大规模的集成电路工艺的提高,出现了多种集成的数字化温度传感器。
然而测量温度的关键就是温度传感器,温度传感器的发展经历了三个发展阶段:
传统的分立式温度传感器;
模拟集成温度传感器;
只能集成温度传感器。
目前典型的温度测控系统由模拟式温度传感器和单片机组成。
由于模拟式温度传感器输出的模拟信号必须经过A/D转换环节获得数字信号后才能与单片机等微处理器连接,因而使得硬件电路结构复杂,成本较高。
因此目前国际上新型温度传感器正从模拟向数字式,从集成化向智能化,网络化的方向飞速发展,以DS18B20为代表的新型单总线数字式温度传感器集温度测量和A/D转换于一体,直接输出数字量,与单片机接口电路结构简单,广泛使用距离远、节点分布多的场合,具有较强的推广和应用价值。
3.2DS18B20数字温度传感器简介
3.2.1温度传感器内部结构
DS18B20数字温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
图3-1温度传感器内部结构
3.2.2DS18B20产品的特点
•独特的单线接口仅需一个端口引脚进行通讯
•简单的多点分布应用
•无需外部器件
•可通过数据线供电
•零待机功耗
•测温范围-55~+125℃,以0.5℃递增。
华氏器件-67~+2570F,以0.90F递增
•温度以9位数字量读出
•温度数字量转换时间200ms(典型值)
•用户可定义的非易失性温度报警设置
•报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件
•应用包括温度控制、工业系统、消费品、温度计或任何热感测系统
3.2.3DS18B20引脚图及引脚功能介绍
TO-92封装的DS18B20的引脚排列见图3-2,其引脚功能描述见表3-1。
图3-2DS18B20的引脚图
表3-1DS18B20详细引脚功能描述
序号
名称
引脚功能描述
1
GND
地信号
2
DQ
数据输入/输出引脚。
开漏单总线接口引脚。
当被用着在寄生电源下,也可以向器件提供电源。
3
VDD
可选择的VDD引脚。
当工作于寄生电源时,此引脚必须接地。
3.2.4DS18B20的使用方法
由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。
由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。
DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。
该协议定义了几种信号的时序:
初始化时序、读时序、写时序。
所有时序都是将主机作为主设备,单总线器件作为从设备。
而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。
数据和命令的传输都是低位在先。
DS18B20的复位时序
DS18B20的读时序
对于DS18B20的读时序分为读0时序和读1时序两个过程。
对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。
DS18B20在完成一个读时序过程,至少需要60us才能完成。
DS18B20的写时序
对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。
对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。
3.3DS18B20的测温原理
DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;
温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出;
其工作电源既可在远端引入,也可采用寄生电源方式产生;
多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路.
低温度系数晶振的震荡频率受温度的影响很小,用于产生固定频率脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,途中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数晶振器产生的时钟脉冲进行计数,进而完成温度测量,计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的一个基值,减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数。
当减法计数器1的预值减到0时,温度寄存器的值将加1,减法计数器1的预值将从新被装入,减法计数器1从新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环,直到减法计数器2计数到0时,停止温度寄存器值得累加,此时温度寄存器中的数值即为所测温度。
对于DS18B20的使用,多采用单片机实现数据采集,处理时,将DS18B20信号线与单片机一位口线相连,单片机可挂接多片DS18B20,从而实现多点温度检测系统。
第四章系统总体设计
4.11602液晶显示器和单片机接口技术
4.1.11602液晶显示器简介
1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。
工业字符型液晶,能够同时显示16x02即32个字符。
(16列2行)
注:
为了表示的方便,后文皆以1表示高电平,0表示低电平。
1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。
它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。
1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。
4.1.2功能管脚
图4-11602管脚图
1602采用标准的16脚接口,其中:
第1脚:
VSS为电源地
第2脚:
VCC接5V电源正极
第3脚:
V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
第4脚:
RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
第5脚:
RW为读写信号线,高电平
(1)时进行读操作,低电平(0)时进行写操作。
第6脚:
E(或EN)端为使能(enable)端。
第7~14脚:
D0~D7为8位双向数据端。
第15~16脚:
空脚或背灯电源。
15脚背光正极,16脚背光负极。
4.1.3特性应用
+3.3V电压,对比度可调
内含复位电路
提供各种控制命令,如:
清屏、字符闪烁、光标闪烁、显示移位等多种功能
有80字节显示数据存储器DDRAM
内建有192个5X7点阵的字型的字符发生器CGROM
8个可由用户自定义的5X7的字符发生器CGRAM
微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。
4.1.41602与单片机接口电路
系统显示电路由单片机AT89C51、字符液晶显示器LM016L和1Kx8的排阻构成。
单片机实现对LCD命令和显示数据的读写控制功能,P0口作数据口,与LM016L的D0~D7相接,在P0口D0~D7数据线之间分别接8个上拉电阻,以确保电路能够正常显示。
AT89C51的P1口作为LCD的控制线,P2.0~P2.2分别接LM016L的RS、RW和E端;
LM016L的其它三个控制端VDD和VSS、VEE分别接电源和地。
系统显示电路组成如图所示。
图4-21602与单片机接口
4.2单片机单元
4.2.1AT89C51单片机简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
它的管脚图如下图所示。
图4-3AT89C52各引脚图
1.主要特性:
(1)与MCS-51兼容
(2)42K字节可编程闪烁存储器(3)寿命:
1000写/擦循环(4)数据保留时间(5)10年全静态工作:
(6)0Hz-24Hz三级程序存储器锁定(7)128*8位内部RAM(8)32可编程I/O线(9)5个中断源(10)可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路
2.管脚说明:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
4.2.2晶振电路
振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
表4-1AT89C52主要功能特性
主要功能特性
兼容MCS51指令系统
8K可反复擦写FlashROM
32个双向I/O口
256x8bit内部RAM
3个16位可编程定时/计数器中断
时钟频率0-24MHz
2个串行中断
可编程UART串行通道
2个外部中断源
共6个中断源
2个读写中断口线
3级加密位
低功耗空闲和掉电模式
软件设置睡眠和唤醒功能
4.2.3复位电路
复位操作有上电自动复位相按键手动复位两种方式。
上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图1—8(a)所示。
这佯,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。
按键手动复位有电平方式和脉冲方式两种。
其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的,其电路如图1—8(b)所示;
而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的,
其电路如图5—4(c)所示:
(a)上电复位(b)按键电平复位(c)按键脉冲复位
图3-3复位电路
上述电路图中的电阻、电容参数适用于6MHz晶振,能保证复位信号高电平持续时间大于2个机器周期。
本系统的复位电路采用图5-5(b)上电复位方式。
4.3系统的硬件组成及设计原理
图3.-1硬件电路图
第五章系统软件设计
5.1程序流程图
5.2程序
#include<
reg51.h>
intrins.h>
#defineucharunsignedchar
#defineuintunsignedint
sbitDQ=P2^5;
//定义DS18B20端口DQ
sbitBEEP=P2^7;
//蜂鸣器驱动线
bitpresenc