基于单片机温度控制系统的设计.doc

上传人:知****量 文档编号:13007882 上传时间:2022-04-27 格式:DOC 页数:15 大小:210KB
返回 下载 相关 举报
基于单片机温度控制系统的设计.doc_第1页
第1页 / 共15页
基于单片机温度控制系统的设计.doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《基于单片机温度控制系统的设计.doc》由会员分享,可在线阅读,更多相关《基于单片机温度控制系统的设计.doc(15页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、. .摘要随着微机测量和控制技术的迅速发展与广泛应用,以单片机为核心的温度采集与控制系统的研发与应用在很大程度上提高了生产生活中对温度的控制水平。本设计论述了一种以STC89C52单片机为主控制单元,以DS18B20为温度传感器的温度控制系统。该控制系统可以实时存储相关的温度数据并记录当前的时间。系统设计了相关的硬件电路和相关应用程序。硬件电路主要包括STC89C52单片机最小系统,测温电路、实时时钟电路、LCD液晶显示电路以及通讯模块电路等。系统程序主要包括主程序,读出温度子程序,计算温度子程序、按键处理程序、LCD显示程序以及数据存储程序等。关键词STC89C52单片机;DS18B20;显

2、示电路目 录一、引言4(一)课题研究的背景4(二)课题研究的目的和意义4二、硬件电路的设计4(一)系统设计的框架4(二)单片机最小系统电路5(三)单片机的选型51.STC89C52单片机简介62.STC89C52单片机时序63.STC89C52单片机引脚介绍6(四)温度传感器电路8(五)系统电源电路的设计9(六)LCD显示电路10(七)串口通讯电路10(八)按键接口电路10(九)DS1302时钟电路11(十)存储器接口电路11三、系统软件设计12(一)计算温度子程序12(二)按键处理子程序13(三)计算温度子程序14(四)显示数据刷新子程序14四、结束语15参考文献16第一章 引言1.1 课题

3、研究的背景工业控制是计算机的一个重要应用领域,计算机控制系统正是为了适应这一领域的需要而发展起来的一门专业技术,它主要研究如何将计算机技术、通过信息技术和自动控制理论应用于工业生产过程,并设计出所需要的计算机控制系统。随着微机测量和控制技术的迅速发展与广泛应用,以单片机为核心的温度采集与控制系统的研发与应用在很大程度上提高了生产生活中对温度的控制水平。本设计就是基于单片机STC89C52温度控制系统的设计,通过本次课程实践,我们更加的明确了单片机的广泛用途和使用方法,以及其工作的原理。1.2 课题研究的目的和意义随着社会的发展,温度的测量及控制变得越来越重要。本文采用单片机STC89C52设计

4、了温度实时测量及控制系统。单片机STC89C52 能够根据温度传感器DS18B20 所采集的温度在液晶屏上实时显示,通过控制从而把温度控制在设定的X围之内。所有温度数据均通过液晶显示器LCD显示出来。系统可以根据时钟存储相关的数据。通过该课程的学习使我们对计算机控制系统有一个全面的了解、掌握常规控制算法的使用方法、掌握简单微型计算机应用系统软硬的设计方法,进一步锻炼同学们在微型计算机应用方面的实际工作能力。第二章 硬件电路的设计2.1 系统设计的框架本课题设计的是一种以STC89C52单片机为主控制单元,以DS18B20为温度传感器的温度控制系统。该控制系统可以实时存储相关的温度数据并记录当前

5、的时间。其主要包括:电源模块、温度采集模块、按键处理模块、实时时钟模块、数据存储模块、LCD显示模块、通讯模块以及单片机最小系统。图1 系统设计框架2.2 单片机最小系统电路在课题设计的温度控制系统设计中,控制核心是STC89C52单片机,该单片机为51系列增强型8位单片机,它有32个I/O口,片内含4K FLASH工艺的程序存储器,便于用电的方式瞬间擦除和改写,而且价格便宜,其外部晶振为12MHz,一个指令周期为1S。使用该单片机完全可以完成设计任务,其最小系统主要包括:复位电路、震荡电路以及存储器选择模式(EA脚的高低电平选择),电路如下图2所示:图2 单片机最小系统2.3 单片机的选型本

6、课题设计的温度控制系统主控制芯片选型为STC89C52单片机,其特点如下:2.3.1.STC89C52单片机简介目前,51系列单片机在工业检测领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种类型的语音接口,构成具有合成语音输出能力的综合应用系统,以增强人机对话的功能。STC89C52单片机是XX宏晶科技XX生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。每一个单片机包括:一个8位的微型处理器CPU;一个512K的片内数据存储器RAM;4K片内程序存储器;四个8位并行的I/O接口P0-P3,每个接口既可以输入,也可以输出;两个定时器/记数器;五个中断源的中

7、断控制系统;一个全双工UART的串行I/O口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率是12MHZ。以上各个部分通过内部总线相连接。2.3.2STC89C52单片机时序 STC89C52单片机的一个执器周期由6个状态(s1s6)组成,每个状态又持续2个震荡周期,分为P1和P2两个节拍。这样,一个机器周期由12个振荡周期组成。若采用12MHz的晶体振荡器,则每个机器周期为1us,每个状态周期为16us;在一数情况下,算术和逻辑操作发生在N期间,而内部寄存器到寄存器的传输发生在P2期间。对于单周期指令,当指令操作码读人指令寄存器时,使从S1P2开始执行指令。如果是双

8、字节指令,则在同一机器周期的s4读人第二字节。若为单字节指令,则在51期间仍进行读,但所读入的字节操作码被忽略,且程序计数据也不加1。在加结束时完成指令操作。多数STC89C52指令周期为12个机器周期,只有乘法和除法指令需要两个以上机器周期的指令,它们需4个机器周期。 对于双字节单机器指令,通常是在一个机器周期内从程序存储器中读人两个字节,但Movx指令例外,Movx指令是访问外部数据存储器的单字节双机器周期指令,在执行Movx指令期间,外部数据存储器被访问且被选通时跳过两次取指操作。2.3.3STC89C52单片机引脚介绍STC89C52单片机的40个引脚中有2个专用于主电源引脚,2个外接

9、晶振的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。下面按引脚功能分为4个部分叙述个引脚的功能。(1)电源引脚Vcc和VssVcc(40脚):接+5V电源正端;Vss(20脚):接+5V电源正端。(2)外接晶振引脚XTAL1和XTAL2XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。XTAL2(18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为

10、外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。(3)控制信号或与其它电源复用引脚 控制信号或与其它电源复用引脚有RST/VPD、ALE/P、PSEN和EA/VPP等4种形式。(A)RST/VPD(9脚):RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。(B)ALE/ P (30脚):当访问外部存储器时,ALE(允许地址锁存

11、信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低(C)PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。(D)EA/Vpp(31脚):EA为访问外部程序储器控制信号,低电平有效。当EA端保持高电平时,单片机访问片内程序存储器4KB(MS52子系列为8KB)。若超出该X围时,自动转去执行外部程序存储器的程序。当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,

12、该引脚用于接21V的编程电源Vpp。 (4)输入/输出(I/O)引脚P0口、P1口、P2口及P3口(A).P0口(39脚22脚):P0.0P0.7统称为P0口。当不接外部存储器与不扩展I/O接口时,它可作为准双向8位输入/输出接口。当接有外部程序存储器或扩展I/O口时,P0口为地址/数据分时复用口。它分时提供8位双向数据总线。对于片内含有EPROM的单片机,当EPROM编程时,从P0口输入指令字节,而当检验程序时,则输出指令字节。(B).P1口(1脚8脚):P1.0P1.7统称为P1口,可作为准双向I/O接口使用。对于MCS52子系列单片机,P1.0和P1.1还有第2功能:P1.0口用作定时器

13、/计数器2的计数脉冲输入端T2;P1.1用作定时器/计数器2的外部控制端T2EX。对于EPROM编程和进行程序校验时,P0口接收输入的低8位地址。(C).P2口(21脚28脚):P2.0P2.7统称为P2口,一般可作为准双向I/O接口。当接有外部程序存储器或扩展I/O接口且寻址X围超过256个字节时,P2口用于高8位地址总线送出高8位地址。对于EPROM编程和进行程序校验时,P2口接收输入的8位地址。(D).P3口(10脚17脚):P3.0P3.7统称为P3口。它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2

14、功能。P3口的第2功能见下表引脚第2功能P3.0RXD(串行口输入端0)P3.1TXD(串行口输出端)P3.2INT0(部中断0请求输入端,低电平有效)P3.3INT1(中断1请求输入端,低电平有效)P3.4T0(时器/计数器0计数脉冲端)P3.5T1(时器/计数器1数脉冲端)P3.6WR(部数据存储器写选通信号输出端,低电平有效)P3.7RD(部数据存储器读选通信号输出端,低电平有效)表1 P3引脚功能综上所述,MCS51系列单片机的引脚作用可归纳为以下两点:1).单片机功能多,引脚数少,因而许多引脚具有第2功能;2).单片机对外呈3总线形式,由P2、P0口组成16位地址总线;由P0口分时复

15、用作为数据总线。2.4 温度传感器电路采用一线制数字温度传感器DS18B20来作为本课题的温度传感器。传感器输出信号进4.7K的上拉电阻直接接到单片机的P1.0引脚上。DS18B20温度传感器是美国达拉斯(DALLAS)半导体公司推出的应用单总线技术的数字温度传感器。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯片上。本设计中温度传感器之所以选择单线数字器件DS18B20,是在经过多方面比较和考虑后决定的,主要有以下几方面的原因:(1)系统的特性:测温X围为-55+125 ,测温精度为士0.5;温度转换精度912位可变,能够直接将温度转换值以16位二进制数码的方式串行输

16、出;12位精度转换的最大时间为750ms;可以通过数据线供电,具有超低功耗工作方式。(2)系统成本:由于计算机技术和微电子技术的发展,新型大规模集成电路功能越来越强大,体积越来越小,而价格也越来越低。一支DS18B20的体积与普通三极管相差无几,价格只有十元人民币左右。(3)系统复杂度:由于DS18B20是单总线器件,微处理器与其接口时仅需占用1个I/O端口且一条总线上可以挂接几十个DS18B20,测温时无需任何外部元件,因此,与模拟传感器相比,可以大大减少接线的数量,降低系统的复杂度,减少工程的施工量。(4)系统的调试和维护:由于引线的减少,使得系统接口大为简化,给系统的调试带来方便。同时因

17、为DS18B20是全数字元器件,故障率很低,抗干扰性强,因此,减少了系统的日常维护工作。DS18B20温度传感器只有三根外引线:单线数据传输总线端口DQ ,外供电源线VDD,共用地线GND。DS18B20有两种供电方式:一种为数据线供电方式,此时VDD接地,它是通过内部电容在空闲时从数据线获取能量,来完成温度转换,相应的完成温度转换的时间较长。这种情况下,用单片机的一个I/O口来完成对DS18B20总线的上拉。另一种是外部供电方式(VDD接+5V),相应的完成温度测量的时间较短。在本设计中采用外部供电方式实现DS18B20传感器与单片机的连接,其接口电路如图4所示。图4 温度传感器接口(五)系

18、统电源电路的设计本系统采用电源稳压芯片是LM2596,该开关电压调节器是降压型电源管理单片集成电路,能够输出3A的驱动电流,输入电压是+5v,输入电压是+24v,同时具有很好的线性和负载调节特性。该器件内部集成频率补偿和固定频率发生器,开关频率为150KHz,与低频开关调节器相比较,可以使用更小规格的滤波元件。 该器件还有其他一些特点:在特定的输入电压和输出负载的条件下,输出电压的误差可以保证在4%的X围内,振荡频率误差在15%的X围内;可以用仅80A的待机电流,实现外部断电;具有自我保护电路(一个两级降频限流保护和一个在异常情况下断电的过温完全保护电路)在该温度控制系统中,其电源电路设计如下

19、图10所示。图5 系统电源模块(六)LCD显示电路本课题设计的温度控制系统是采用液晶屏128*64作为显示模块,其接口原理图如下图6所示:图6 液晶显示接口电路(七)串口通讯电路本课题设计的通讯采用的是常见的串口通讯,协议转换芯片是采用MAX232A,其接口原理图如下图7所示:图6 串口通讯接口电路(八)按键接口电路本课题设计采用的键盘模块,其接口原理图如下图8所示:图8 键盘模块电路(九)DS1302时钟电路本课题设计的时钟是采用时钟芯片DS1302,其接口原理图如下图9所示:图9 时钟接口电路(十)存储器接口电路本课题设计的存储器采用的是AT24C256,其接口原理图如下图十所示:图10

20、存储器电路三、系统软件设计系统的软件主要是采用C语言,对单片机进行变成实现各项功能。主程序对模块进行初始化,而后调用读温度、处理温度、显示、键盘等模块。用的是循环查询方式,来显示和控制温度,主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值并负责调用各子程序,其程序流程如图10系统程序流程图。开始初始化启动DB18B20读温度计算温度LCD显示图10系统程序流程图(一)计算温度子程序 读出温度子程序的主要功能包括初始化,判断DS18B20是否存在,若存在则进行一系列的读操,作若不存在则返回。其程序流程图如图11所示。图11 读温度流程图(二)按键处理子程序 按键处

21、理子程序主要是负责参数的设置,主程序每循环一次都要对按键进行扫描,判断是否有输入键按下则进行一系列的按键输入操作。其程序流程框图如图12所示。图12 温度转换流程图(三)计算温度子程序计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图13所示。 开始温度零下?温度值取补码置“”标志计算小数位温度BCD值计算整数位温度BCD值 结束置“+”标志NY图13 计算温度子程序(四)显示数据刷新子程序显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。程序流程图如图14。温度数据移入显示寄存器十位数0?百位数

22、0?十位数显示符号百位数不显示百位数显示数据(不显示符号) 结束NnYY图14 数据刷新子程序四、结束语通过此次综合实践的设计,我学会了怎样把所学的书本知识应用于实践中去,并学会了如何去思考整个控制系统的软硬件设计。实践过程中我们遇到了一些困难,但在解决问题的过程中,我学会了怎样发现问题、分析问题,进而解决问题。此次课程设计不仅增强了我学习专业课的兴趣,而且给了我们勇气和信心,更重要的是它为我们以后的学习指明了方向。课程设计,我受益匪浅,除了巩固了我的理论知识以外,作为一个大学生我想更重要的是懂得了在设计实验当中严谨XX的态度,锻炼在实际中独立解决问题和学习新知识的能力,感谢老师为我们提供这么

23、珍贵的机会,我也期待着能有更多的机会能够参与到更多的设计活动中。参考文献1 李广弟,X月秀,王秀山.单片机基础航空航天大学,2001(07).2 蔡美琴,X为民等.MCS-51系列单片机系统及其应用高等教育,2004(06).3 X毅刚,彭喜元.新编MCS-51单片机应用设计.XX工业大学,1997.4 X瑞星,胡健等.Protel DXP 实用教程机械工业,2003(04).5 于海生. 计算机控制技术 机械工业 2007(05).6 谭浩强. C程序设计 清华大学.7 康华光. 电子技术基础 模拟部分 高等教育 1998(08).8 余锡存. 单片机原理与接口技术 XX电子科技大学,2003. .jz.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 研究报告 > 设计方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com