基于STC89C52的温控系统设计学士学位论文.docx
- 文档编号:26805104
- 上传时间:2023-06-22
- 格式:DOCX
- 页数:60
- 大小:552.10KB
基于STC89C52的温控系统设计学士学位论文.docx
《基于STC89C52的温控系统设计学士学位论文.docx》由会员分享,可在线阅读,更多相关《基于STC89C52的温控系统设计学士学位论文.docx(60页珍藏版)》请在冰豆网上搜索。
基于STC89C52的温控系统设计学士学位论文
学士学位毕业设计(论文)
基于STC89C52的温控系统设计
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
摘要
本论文介绍了一种以STC公司的“89C52单片机”为主要控制元件,通过DALLAS公司的DS18S20温度传感器测温的新型数字温度计。
主要包括硬件电路的设计和系统程序的设计。
硬件电路主要包括主控制器、测温电路和显示电路等,主控制器采用“单片机STC89C52”,温度传感器采用美国DALLAS半导体公司生产的“DS18S20”,显示电路采用4位共阳极LED数码管以动态扫描法直读显示。
系统程序主要包括主程序、读出温度子程序、温度处理子程序、报警子程序、报警温度值设定子程序、LED显示子程序等。
此外,还介绍了系统的测试。
本数字温度计设计采用美国DALLAS半导体公司推出的一种智能温度传感器DS18S20作为检测元件,测温范围为-55~125℃,最大分辨率可达0.0625℃。
主控制器采用单片机STC89C52,其集成度高,片内资源丰富,接口模块包括SPI、SCI、A/D、PWM等。
显示电路采用4位共阳极LED数码管,从P0口输出段码,列扫描用P2口来实现。
由于采用了改进型智能温度传感器DS18S20作为检测元件,与传统的温度计相比,本数字温度计减少了外部的硬件电路,具有低成本和易使用的特点。
DS18S20温度计还可以在高温报警、远距离多点测温控制等方面进行应用开发,具有很好的发展前景。
关键词:
单片机主控制器温度传感器数字温度
ABSTRACT
ThisthesisintroducesasortofcontrollerbasesontheprincipleofMCU,anewtypeofdigitalthermometerbasesontemperaturesensorDS18S20.Thisthesismainlycontainshardwarecircuitdesignandsystemprogramdesign.Hardwarecircuitmainlycontainsmastercontroller,temperaturedetectioncircuitanddisplaycircuit,etc.mastercontrollerusesSTC89C52;temperaturesensorusesDS18S20,whichisproducedbyDALLASsemiconductorcompany,USA.Displaycircuituses4bitcommoncathodeLEDnixietube;itcandirectlyreadtheresultbydynamicscanning.Systemprogrammainlycontainsmainprogram,readtemperaturesubprogram,temperaturetreatmentsubprogram,LEDdisplaysubprogrametc.Inaddition,italsointroducessystemtest.ThisdigitalthermometerdesignusesasortofintelligenttemperaturesensorDS18S20,whichisproducedbyDALLASsemiconductorcompany,USA,asadetectingelement,temperaturemeasuringrangeis-55℃~125℃,themaximumresolutionis0.0625℃.MastercontrollerusesSTC89C52MCU,itishighlyintegrated,itsinternalresourceisplentiful,itsinterfacemodulecontainsSPI,SCI,A/D,PWMetc.Displaycircuituses4bitcommoncathodeLEDnixietube,itssegmentcodeoutputfromP0,itscolumnscanisrealizedbyP2.ByreasonofusingsecondgenerationintelligenttemperaturesensorDS18S20asdetectingelement,comparedwithtraditionalthermometer,thisdigitalthermometerdecreasedexternalhardwarecircuit,hasthefeatureoflowcostandinaccessible.DS18S20thermometercanalsobeusedinhightemperaturealert,distantmultipointtemperaturedetection,etc,andhasabrightfuturedevelopment.
Keywords:
MCUMastercontrollerTemperaturesensorDigitalthermometer
前言
温度是生活及生产中最基本的物理量,它表征的是物体的冷热程度。
它不仅在很多生产过程中起着重要作用,也与我们的日常生息息相关,所以对温度进行控制是非常有必要和有意义的。
随着现代信息技术的飞速发展,智能化已是现代温度控制系统发展的主流方向。
温度测控技术包括温度测量技术和温度控制技术两个方面。
在温度的测量技术中,接触式测温发展较早,这种测量方法的优点是:
简单、可靠、低廉,测量精度较高,一般能够测得真实温度;但由于检测元件热惯性的影响,响应时间较长,对热容量小的物体难以实现精确的测量,并且该方法不适宜于对腐蚀性介质测温,不能用于极高温测量,难于测量运动物体的温度。
非接触式测温是通过对辐射能量的检测来实现温度测量的方法,其优点是不破坏被测温场,可以测量热容量小的物体,适于测量运动温度,还可以测量区域的温度分布,响应速度较快。
但也存在测量误差较大、结构复杂、价格昂贵等缺点。
因此,在实际的测量中,要根据具体的测量对象选择合适的测量方法,在满足测量精度要求的前提下尽量减少人力和物力的投入。
针对此问题,本系统设计的目的是实现一种可连续高精度调温的温度控制系统,它应用广泛,功能强大,小巧美观,便于携带,是一款既实用又廉价的控制系统。
特别是近年来,温度控制系统已应用到人们生活的各个方面,但温度控制一直是一个未开发的领域,却又是与人们息息相关的一个实际问题。
本文从硬软件两个方面介绍了基“STC89C52单片机”温度测量及控制系统的设计。
系统硬件由控制电路、温度采集电路、键盘和LED显示电路组成。
软件设计从设计思路、软件系统框图出发,先介绍整体的思路后,再逐一分析各模块程序算法的实现,最终编写出满足任务需求的程序。
最终通过DS18B20采集温度并显示出来,由此对环境的温度进行有效检测与报警。
基本上满足了温度检测与报警的要求,具有超调量小,采样值与设定值基本一致,操作简单等优点。
本设计创新点在于采用数字式温度传感器DS18B20作为感温元件,占用单片机引脚少,因而可以利用空余引脚通过软件模拟和温度显示。
1绪论
1.1温度控制系统设计的背景
测量控制的作用是从生产现场中获取各种参数,运用科学计算的方法,综合各种先进技术,使每个生产环节都能够得到有效的控制,不但保证了生产的规范化、提高产品质量、降低成本,还确保了生产安全。
所以,测量控制技术已经被广泛应用于炼油、化工、冶金、电力、电子、轻工和纺织等行业。
单片机以其集成度高、运算速度快、体积小、运行可靠、价格低廉等优势,在过程控制、数据采集、机电一体化、智能化仪表、家用电器以及网络技术等方面得到了广泛的应用,特别是单片机技术的开发与应用,标志着计算机发展史上又一个新的里程碑。
作为计算机两大发展方向之一的单片机,以面向对象的实时控制为己任,嵌入到如家用电器、汽车、机器人、仪器仪表等设备中,使其智能化。
温度控制系统在工业生产、科学研究和人们的生活领域中,得到了广泛应用。
在工业生产过程中,很多时候都需要对温度进行严格的监控,以使得生产能够顺利的进行,产品的质量才能够得到充分的保证。
使用温度控制系统可以对生产环境的温度进行有效控制,保证生产的自动化、智能化能够顺利、安全进行,从而提高企业的生产效率。
水温控制系统应用十分广阔。
1.2温度控制系统设计的意义
随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。
温度测试控制系统,控制对象是温度。
温度控制在日常生活及工业领域应用相当广泛,比如温室、水池、发酵缸、电源等场所的温度控制。
而以往温度控制是由人工完成的而且不够重视,其实在很多场所温度都需要监控以防止发生意外。
针对此问题,本系统设计的目的是实现一种可连续高精度调温的温度控制系统,它应用广泛,功能强大,小巧美观,便于携带,是一款既实用又廉价的控制系统。
特别是近年来,温度控制系统已应用到人们生活的各个方面,温度控制的开发与人们工作生活息息相关。
水是一种我们赖以生存的重要资源,无论是在工农业生产还是我们的日常生活处处离不开水。
控制水的温度可以极大提高生产效率,节约资源,提升我们的生活质量。
在水资源日益匮乏的今天,拥有并推广简易完善的水温控制系统对于我们社会的可持续发展,有着极大的实际意义。
1.3温度控制系统完成的功能
本器件以STC89C52单片机系统进行温度采集与控制温度信号由模拟温度传感器DS18B20采集输入STC89C52,主控器能对各温度检测器通过LED进行显示。
1、本机实现的功能:
(1)利用温度传感器采集到当前的温度,通过STC89C52单片机进行控制,最后通过LED数码管以串行口传送数据实现温度显示。
(2)可以通过按键任意设定一个恒定的温度。
(3)将环境境数据与所设置的数据进行比较,当温度低于设定值时,开启加热设备,进行加热;当温度高于设定温度时,进行散热,从而实现对温度的自动控制。
(4)当系统出现故障,超出控制温度范围时,自动蜂鸣报警。
2、扩展功能:
(1)具有通信能力,可接收其他数据设备发来的命令,或将结果传送到其他数据设备。
(2)采用适当的控制方法实现当设定温度或环境温度突变时,减小系统的调节时间和超调量。
(3)温度控制的静态误差。
2系统设计
2.1系统功能
本系统利用单片机采集温度,温度值精确到小数点一位,用4位数码管显示温度值,设置三个按键调整报警温度值,当温度超出所设定的上下限范围时,蜂鸣器开始报警。
2.2系统框图
图1总体设计方框图
2.3单片机的介绍
40个引脚,4kbytesflash片内程序存储器,128bytes的随机存取数据存储器(ram),32个外部双向输入/输出(i/o)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(wdt)电路,片内时钟振荡器。
STC89C52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。
该器件采用Atmel公司的高密度非易失性存储技术生产,其指令与工业标准的80C52指令集兼容。
片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。
通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,STC89C52便成为一个高效的微型计算机。
它的应用范围广,可用于解决复杂的控制问题,且成本较低。
其结构框图如图2所示。
图2STC89C52结构框图
图3STC89C52
此外,STC89C52设计和配置了震荡频率可为12MHZ并可通过软件设置省电模式。
空闲模式下,cpu暂停工作,而ram定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存ram的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有pdip、tqfp和plcc等三种封装形式,以适应不同产品的需求。
主要功能特性:
·兼容mcs-51指令系统
·4k可反复擦写(>1000次)ispflashrom
·32个双向i/o口
·4.5-5.5v工作电压
·2个16位可编程定时/计数器
·时钟频率0-33mhz
·全双工uart串行中断口线
·128x8bit内部ram
·2个外部中断源
·低功耗空闲和省电模式
·中断唤醒省电模式
·3级加密位
·看门狗(wdt)电路
·软件设置空闲和省电功能
·灵活的isp字节和分页编程
·双数据寄存器指针
按照功能,STC89C52的引脚可分为主电源、外接晶体振荡或振荡器、多功能I/O口、控制和复位等。
1.多功能I/O口
STC89C52共有四个8位的并行I/O口:
P0、P1、P2、P3端口,对应的引脚分别是P0.0~P0.7,P1.0~P1.7,P2.0~P2.7,P3.0~P3.7,共32根I/O线。
每根线可以单独用作输入或输出。
①P0端口,该口是一个8位漏极开路的双向I/O口。
在作为输出口时,每根引脚可以带动8个TTL输入负载。
当把“1”写入P0时,则它的引脚可用作高阻抗输入。
当对外部程序或数据存储器进行存取时,P0可用作多路复用的低字节地址/数据总线,在该模式,P0口拥有内部上拉电阻。
在对Flash存储器进行编程时,P0用于接收代码字节;在校验时,则输出代码字节;此时需要外加上拉电阻。
②P1端口,该口是带有内部上拉电阻的8位双向I/O端口,P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
P1口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在对Flash编程和程序校验时,P1口接收低8位地址。
另外,P1.0与P1.1可以配置成定时/计数器2的外部计数输入端(P1.0/T2)与定时/计数器2的触发输入端(P1.0/T2EX),如表1所示。
表1P1口管脚复用功能
端口引脚
复用功能
P1.0
T2(定时器/计算器2的外部输入端)
P1.1
T2EX(定时器/计算器2的外部触发端和双向控制)
P1.5
MOSI(用于在线编程)
P1.6
MISO(用于在线编程)
P1.7
SCK(用于在线编程)----字体、格式不对
③P2端口,该口是带有内部上拉电阻的8位双向I/O端口,P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
P2口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在访问外部程序存储器或16位的外部数据存储器时,P2口送出高8位地址,在访问8位地址的外部数据存储器时,P2口引脚上的内容(就是专用寄存器(SFR)区中P2寄存器的内容),在整个访问期间不会改变。
在对Flash编程和程序校验期间,P2口也接收高位地址或一些控制信号。
④P3端口,该口是带有内部上拉电阻的8位双向I/O端口,P3口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
P3口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在STC89C52中,同样P3口还用于一些复用功能,如表2所列。
在对Flash编程和程序校验期间,P3口还接收一些控制信号。
表2P3端口引脚与复用功能表
端口引脚
复用功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
INT0(外部中断0)
P3.3
INT1(外部中断1)
P3.4
T0(定时器0的外部输入)
P3.5
T1(定时器1的外部输入)
P3.6
WR(外部数据存储器写选通)
P3.7
RD(外部数据存储器读选通)
2.RST复位输入端。
在振荡器运行时,在此脚上出现两个机器周期的高电平将使其单片机复位。
看门狗定时器(Watchdog)溢出后,该引脚会保持98个振荡周期的高电平。
在SFRAUXR(地址8EH)寄存器中的DISRTO位可以用于屏蔽这种功能。
DISRTO位的默认状态,是复位高电平输出功能使能。
3.ALE/PROG地址锁存允许信号。
在存取外部存储器时,这个输出信号用于锁存低字节地址。
在对Flash存储器编程时,这条引脚用于输入编程脉冲PROG。
一般情况下,ALE是振荡器频率的6分频信号,可用于外部定时或时钟。
但是,在对外部数据存储器每次存取中,会跳过一个ALE脉冲。
在需要时,可以把地址8EH中的SFR寄存器的0位置为“1”,从而屏蔽ALE的工作;而只有在MOVX或MOVC指令执行时ALE才被激活。
在单片机处于外部执行方式时,对ALE屏蔽位置“1”并不起作用。
4.PSEN程序存储器允许信号。
它用于读外部程序存储器。
当STC89C52在执行来自外部存储器的指令时,每一个机器周期PSEN被激活2次。
在对外部数据存储器的每次存取中,PSEN的2次激活会被跳过。
5.EA/Vpp外部存取允许信号。
为了确保单片机从地址为0000H~FFFFH的外部程序存储器中读取代码,故要把EA接到GND端,即地端。
但是,如果锁定位1被编程,则EA在复位时被锁存。
当执行内部程序时,EA应接到Vcc在对Flash存储器编程时,这条引脚接收12V编程电压Vpp。
6.XTAL1振荡器的反相放大器输入,内部时钟工作电路的输入。
7.XTAL2振荡器的反相放大器输出。
2.4DS18B20的介绍
2.4.1DS18B20的介绍
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
TO-92封装的DS18B20的引脚排列见图4,其引脚功能描述见表3。
图4DS18B20(底视图)
表3DS18B20详细引脚功能描述
序号
名称
引脚功能描述
1
GND
地信号
2
DQ
数据输入/输出引脚。
开漏单总线接口引脚。
当被用着在寄生电源下,也可以向器件提供电源。
3
VDD
可选择的VDD引脚。
当工作于寄生电源时,此引脚必须接地。
DS18B20的性能特点如下:
·独特的单线接口仅需要一个端口引脚进行通信;
·多个DS18B20可以并联在惟一的三线上,实现多点组网功能;
·无须外部器件;
·可通过数据线供电,电压范围为3.0~5.5V;
·零待机功耗;
·温度以9或12位数字;
·用户可定义报警设置;
·报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;
·负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;
DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图5所示。
图5DS18B20内部结构
64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。
温度报警触发器TH和TL,可通过软件写入户报警上下限。
DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。
高速暂存RAM的结构为8字节的存储器,结构如图3所示。
头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。
第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。
DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。
该字节各位的定义如图6所示。
低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。
温度LSB
温度MSB
TH用户字节1
TL用户字节2
配置寄存器
保留
保留
保留
CRC
TM
R1
RO
1
1
1
1
图6DS18B20字节定义
由表4可见,DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。
因此,在实际应用中要将分辨率和转换时间权衡考虑。
高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。
第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。
当DS18B20接收到温度转换命令后,开始启动转换。
转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。
单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625℃/LSB形式表示。
当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。
表5是一部分温度
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 STC89C52 温控 系统 设计 学士学位 论文