




已阅读5页,还剩68页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
动物饲养恒温箱控制系统的设计毕业论文目录摘 要IAbstractII第1章 绪论11.1研究背景及意义11.2研究现状31.3研究内容4第2章 系统总体方案设计62.1 设计方案论证62.1.1 方案一62.1.2 方案二72.2设计方案选择7第3章 系统硬件电路设计93.1电源电路93.2 控制芯片选择103.2.1 AT80C51芯片113.2.2 引脚说明113.3显示电路153.3.1 七段LED数码管的原理153.3.2显示电路整体设计183.4 键盘电路183.5温度采集电路193.5.1 DS18B20引脚及说明203.5.2 DS18B20的参数和用法203.6 时钟频率电路223.7 复位电路233.8 越限报警电路243.9 执行电路25第4章 系统软件设计264.1软件任务分析264.2 主程序274.3 设定温度子程序284.4温度采集子程序294.5温度比较处理子程序294.6定时中断应答子程序304.6.1定时中断0中断服务子程序304.6.2定时器1中断服务子程序314.7 模糊运算子程序32第5章 调试与仿真365.1 调试过程与现象365.2 调试问题及解决方法365.2.1 调试问题365.2.2解决方法365.3 仿真结果375.3.1 温度控制仿真375.3.2 设定温度程序仿真385.3.3 DS18B20 温度采集程序仿真38结束40参考文献41致谢43附录A 系统硬件电路图44附录B 程序清单46动物饲养恒温箱控制系统的设计第1章 绪论 随着生活水平的提高,越来越多的人喜欢饲养宠物,采用单片机控制并加入控制算法实现温度的精确控制,能够提高动物的成活率,改善动物的生活环境。因此,该课题具有重要的理论意义和使用价值。1.1研究背景及意义在人类的生活环境中,温度扮演着极其重要的角色。无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。温度是工农 业生产、气象、环保、国防、科研、航天和科学实验中的重要参数,它是一种常见的过程变量,因为它直接影响燃烧、化学反应、发酵、烘烤、煅烧、蒸馏、浓度、挤压成形,结晶以及空气流动等物理和化学过程。温度控制不好就可能引起生产安全,产品质量和产量等一系列问题。温度控制是许多机器的重要的构成部分,它的功能是将温度控制在所需要的温度范围内,然后进行工件的加工与处理。不论是在生活中还是在工业生产过程中,温度的变化对生活、生产的某些细节环节都会造成不同程度的影响,所以适时地对温度进行控制具有重要的意义1。温度是工业对象中主要的被控参数之一,象冶金、机械、食品、化工各类工业中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的处理温度要求严格控制,计算机温度控制系统使温度控制指标得到了大幅度提高3。温度控制器是实现可测温和控温的电路,是对温度进行控制的电开关设备,它主要分为机械式温控器和电子式温控器两种,温度器属于信息技术的前沿尖端产品,已被广泛用于工农业生产、科学研究和生活等领域,数量高居各种传感器之首。现今社会,越来越多的环境需要对温度进行控制,随着温控器应用领域和范围的日益广泛,温控器的研究与应用正在市场中逐渐占有一席之地,并在日渐成熟中占有巨大的市场前景。随着研究的发展与深入, 温控器现已陆续推出基本款的A系列、高功能的B系列、模块化省配线的C系列等等齐全系列温度控制器4。温度控制器的发展与研究已越来越势不可挡, 但目前温控器行业进入门坎相对较低,如何为客户提供更合适、性价比更好的产品,以及如何及时开发新的需求并实现它的价值已越来越重要, 在这种情况下温度控制器的研究十分必要。传统的温度采集方法不仅费时费力,而且精度差,现今的温度采集以单片机为主的微处理器测控技术,形成数字与模拟混合的测控系统和纯数字测控系统的应用,并正向全数字测控方向快速发展。单片机是在一块硅片上集成了各种部件的微型计算机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。用单片机取代模拟电路作为温度的测量控制器有如下优点5:(1)可靠性高。芯片本身是按工业测控环境要求设计的,其工业抗干扰能力优于一般的通用CPU,且程序指令、系统常数均固化在ROM中,不易破坏,硬集成度高,使系统整体可靠性大大提高。(2)易于扩展。单片机内具有计算机正常运行所必需的部件,芯片外部有许多供扩展用三总线及并行、串行管脚,很容易构成各种规模的计算机应用系统。(3)控制能力强。为满足工业控制要求,单片机的指令系统均有极为丰富的条件分支转移指令、I/O端口的逻辑操作以及位处理能力。(4)体积小。由于单片机的高集成度,整个电路系统的体积有得到大幅度缩小,使便携式仪器的制造成为可能。要想构成一个先进的温度测控系统,除了采用单片机作为其控制器外,性能优良的温度传感器也是必不可少的。智能温度传感器是在模拟集成温度传感器/控制器的基础上发展而成的第三代温度控制器,它将温度传感器、A/D转换器、寄存器、接口电路集成在一个芯片中,有的还包含中央处理器(CPU)、只读存储器(ROM)、随机存储器(RAM或SRAM)、实时日历时钟以及温度控制与报警电路等。其主要优点是:数字化输出、测试及控制能力强、传输距离远、抗干扰能力强、微型化、微功耗、易于配微控制器(MCU)或微型计算机进行数据处理或温度控制。本系统紧跟当今传感器的发展潮流,选用美国DALLAS半导体公司生产的DS18B20型单线智能温度传感器作为温度采集控制部件以实现更高的系统指标6。并且随着生活水平的不断提高,越来越多的人喜欢饲养宠物,但也碰到了很多棘手的问题,比如宠物的休眠期混乱,宠物不吃不喝,甚至死亡等。一般人饲养动物都只是给其提供一个活动场所和食物,缺不知道温度对动物生长发育的重要性,也就导致了一些宠物的健康状况不佳甚至死亡。动物饲养恒温箱正是为了弥补这一缺憾而制作的。它采用时下流行的单片机作为控制中心,在温度检测方面,摒弃了传统的热电偶、热电阻、PN结,转而采用一种新型、可编程温度传感器DS18B207.。它不需要复杂的信号调理电路和A/D转换电路,能直接与单片链接完成数据采集和处理,具有实现方便、精度高、抗干扰能力强的特点。在升温和降温方面。使用了加热电阻和风扇,此二者简单、适用、可靠性高。在单片机和程序的共同作用下,各功能部件协同工作,使箱内温度恒定在最适合小动物生长的范围内。而单片机和DS18B20温度传感器具有集成度高,通用性好,功能强,特别是体积小,重量轻,能耗低,可靠性高,抗干扰能力强和使用方便等独特的优点,在数字化,智能化方面有很广泛的用途,特别是随着国民经济的发展,饲养宠物已经成为了一种生活时尚,人们对饲养箱的温度控制精度和灵活性都提高了要求。而采用单片机为控制芯片,DS18B20为温度检测芯片,并加入模糊控制算法进行控制的饲养恒温箱不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高本空温度的技术指标,从而能够大大的提高产品的质量和数量8。单片机的使用,使控制系统具有了一部分人脑的智能,可大大的服务于人民的生活。1.2研究现状国外先进国家设计的各种温度控制自动化水平较高,装备有完善的检测仪表和计算机控制系统。其计算机控制系统已采用集散系统和分布式系统的形式,大部分配有先进的控制算法,能够获得较好的工艺性能指标。而国内大多数采用仪表控温,由于控制设备精度低,使产品质量受到很大影响。很多企业由于种种原因,尚无能力购置先进的温度自动控制系统9。目前市场上大致有3类温度控制系统分别是:单片机温度控制系统、嵌入式温度控制系统、基于SOPC的温度控制系统。它们有各自的优点与缺点,我们可以根据具体要求进行选择。基于ARM的测控系统主要由测温器件、ARM微处理器、键盘及显示单元组成。测温器件是用作温度的采集。ARM微处理器是系统的核心部分,它用来控制整个系统的工作流程。整个系统的硬件部分分为五个部分,即电路部分、检测电路部分、控制及显示电路部分以及输出控制。系统工作原理为ARM微处理器向传感器发出信号,启动温度传感器采集温度数据,温度传感器采集完一次数据后,将模拟量转换为ARM处理器能识别的数值信号。ARM微处理器实时扫描进行数据的采集,对采集到的信号进行处理10。基于单片机控制的温度自动控制系统中,材料温度由热电阻测量,信号通过放大器放大,毫伏信号放大后由A/D转换成相应的数字量,再通过光电耦合器,进入主机电路。由主机进行数据处理,判断分析,再输出数字控制量,去控制加热功率,从而实现对温度的控制。同时,超过上下限时进行自动报警,控制中自动显示温度值11。基于单片机控制的动物饲养恒温箱,加入模糊控制算法,使被控对象的温度波动大幅度减小,具有响应时间短、超调量小、控制精度高、稳定性好、智能化等优点。经过仿真,此控制系统工作稳定可靠,满足了系统温度控制精度要求,具有较高的实用价值。目前,市场上有很多比较先进的温度控制仪,如美国福禄克公司(Fluke Corporation)提供的紧凑式高准确度标准温度炉,能满足只有极少公司才可达到的IECIOIO 和CSA安全标准。其500系列温控仪有以下特点:-45670可选温度范围,温度稳定性为0.02,温度一致性为0.05,温度不确定性0.1,计算机接口包括RS-232标准配置,重量13.6kg,尺寸为318*203*267mm 。福禄克公司旗下的HART公司更是温度校准的恒温曹世界第一销量的公司,HART设计的独一无二的控制技术能够给出0.0001的温度稳定性。恒温槽设置点的超高分辨力可达到小数点后5位的高精度。另外,还有德国的Lauda公司生产的加热/冷却恒温浴槽、冷却器,温度控制精度可达正负0.01。这些都是当今在温度控制领域研究出来的比较先进的产品,其势头还将一路发展下去,本领域的研究还将不断地进行,也必将会有更多、更加先进、经济的产品问世14。1.3研究内容本课题主要从温度控制系统的硬件系统和软件系统的设计来研究,在文章的各章节中有具体的表述。第1章 绪论 主要分析了课题研究的时代背景、意义以及研究的现状以及今后的发展方向。第2章 系统总体方案设计 详细论述了两种设计方案,并通过对两种方案的分析和对比,最终确定了选择了方案二为本课题的设计方案。第3章 系统硬件设计 详细讲述了系统的硬件部分,把整个系统的设计拆分成几个小的模块,各模块功能如下:1、电源电路,为单片机提供稳定的电源;2、主控芯片的选型;3、温度检测,用DS18B20实现温度检测,最高精确到0.1;4、按键模块,用于调整和设置温度,其设置范围20-40;5、LED显示电路,用三位共阴极LED数码管显示温度值;6、驱动电路,驱动加热电阻和风扇实现升降温过程;7、蜂鸣器,用于调试和报警等。第4章 系统软件设计 对系统的软件部分进行了分析与设计,其功能为:1、实现对数据接口的控制;2、实现数据的读取、存储、显示和报警等应用用能。第5章 软件仿真与调试 使用软件对系统进行了仿真,并给出了部分仿真结果。 第2章 系统总体方案设计 本章节介绍了动物饲养恒温箱控制系统设计的两种方案,通过对其有缺点的论证,最终确定了系统的设计思路。2.1 设计方案论证2.1.1 方案一其系统功能图如图2.1。 图2.1 方案一系统结构图整个系统分为五个部分,即按键电路部分、检测电路部分、控制及显示电路部分以及输出控制部分。检测部分利用热电偶作为恒温箱的温度检测元件,应用桥式电路对热电偶作为补偿。热电偶出来的电流信号通过转换变成电压信号,再进行A/D转换变换成处理器可以接受的电压信号,在从处理器读入进行数据处理。ARM微处理器是系统的核心部分,它用来控制整个系统的工作流程。系统工作原理为ARM微处理器向传感器发出信号,启动温度传感器采集温度数据,温度传感器采集完一次数据后,将模拟量转换为ARM处理器能识别的数值信号15。ARM微处理器从按键模块进行预置数,读入的数据与预置数进行比较,根据偏差的大小,ARM处理器执行程序对加热电阻和电风扇进行控制,从而对恒温箱进行升热或降温,热电偶连续对恒温箱进行温度检测,当偏差存在时处理器就继续驱动后继电路进行温度控制,直到偏差为零。在控制过程中,存在着检测信号与控制信号之间的滞后关系,因此,在控制程序里加入了数字PID控制算法,是控制更加的准确。系统对温度的显示可以通过LCD进行显示。2.1.2 方案二 其系统功能图如图2.2 。 图2.2 方案二系统结构图 本方案采用时下流行的单片机作为控制中心,在温度检测方面,摒弃了传统的热电偶、热电阻、PN结,转而采用一种新型、可编程温度传感器DS18B20。它不需要复杂的信号调理电路和A/D转换电路,能直接与单片链接完成数据采集和处理,具有实现方便、精度高、抗干扰能力强的特点。在温控部分使用了加热电阻和风扇,此二者简单、适用、可靠性高。而显示上则采用3个LED数码管显示,其最小的分辨率为0.1。为了使控制精确到0.1,在执行时加入了模糊控制算法,对温度的采样值与设定值比较,计算出偏差,根据偏差的大小来决定执行电路的动作,能极大的提高系统的控制精度16。在单片机和程序的共同作用下,各功能部件协同工作,使箱内温度恒定在最适合小动物生长的范围内。2.2设计方案选择 方案一用的是热电偶进行温度的测量,热电偶的测量范围和精度要求都符合本设计的需要,在不同的环境下所需要的补偿是不一样的,而且输入处理器要进行模数转换,增加了转换电路即增加了成本,转换还需要时间,那往往就给控制带来了很多麻烦,而且给恒温箱的使用带来一定的局限性,使保温箱不能得到推广,给厂家大批量的生产也带来了很多不便。线性化的处理往往是应用热电偶的约束。且LCD显示的编程复杂,ARM微处理器相对于单片机来说应用不广泛。而在方案二中,应用的是测量温度的专用芯片,避免了上述的一些问题,而且应用方案二的芯片使测量的灵敏度增加不少。在方案一中,热电偶测量出来的信号是电流信号,电流信号适合远距离传输,而到单片机的距离不大,电流信号容易受外界的干扰而影响了测量信号,导致测量的误差增加,就算可以用其他方法消除干扰信号,也麻烦。而在方案二中,测量出来的是电压信号,能直接输入单片机,方便而且准确,不容易受外界干扰。在方案一中,需要进行电流电压的转换,再经过A/D转换,再经过标准化处理才能的到标准的数字电压向输入单片机,而方案二中却可以直接输入。综上所述:方案二比方案一有更大的优越性,而且方案二只用一个芯片就可以达到目的,而方案一却要经过多个步骤,从经济角度看,方案二更加经济实惠,且使用性强。因此这个设计决定起用方案二来进行综合设计。第3章 系统硬件电路设计 常用的温度控制系统由温度测量、数据处理、数据显示和温度控制几部分电路组成,而日常温度传感器以模拟温度传感器和数字温度传感器为主。本文则采用了以AT80C51单片机为主控芯片,DS18B20数字温度传感器作为温度测量芯片。其系统硬件设计部分有电源电路、显示电路、温度检测电路、键盘电路、温度控制执行电路等其他组成部分18。下面将一一论述其原理。3.1电源电路电源是给整个系统提供电能的装置。我们所能利用的是家用的220V交流电源,而单片机所能用的电源电压为直流+5V,因此需要将外部的交流电变压整流后得到较小的直流电压,然后再通过相关的稳压芯片进行稳压,最后能得到单片机所能使用的直流+5V电源19。由于单片机系统都是用单片机和各类芯片及电阻、电容组成的,其工作电压为5V,不需要负电压,可采用三端固定正电压集成稳压器7805系列的芯片。这类芯片能输出+5V电压,按其输出电流不同可分为78L05、78M05,其输出电流分别为0.1A和1.0A,转换成功率分别为0.5W和5W。从整个系统的设计来看,其中有几块集成芯片和多个电阻、电容等器件,其功率总和应在2W左右,所以考虑单片机系统的功率以及一定的功率裕量,故采用78M05作为单片机系统的供电芯片20。电源电路图如图3.1所示:图3.1 电源电路电源电路的输入电源为频率为50Hz的交流220V电压,经过变压器变压后输出,再通过四个二极管进行整流,从而得到较小的直流电压。整流管后面分别接了电容C4,C5滤波电容进行滤波。本电路中使用的电容大小为470uF,另外一个电容大小为0.1uF。78M05的输出级接入两个滤波电容,用于减小因为电源波动对系统造成的影响和滤波。输出级不需要采用大容量的电解电容器,一个容量大小为100uF,再另加一个0.1F的电容器,便可减少因为电源波动的影响和滤去纹波,很好地改善负载的瞬态响应。3.2 控制芯片选择由于系统的控制方案简单,数据量不大,因此初步选用MCS-51系列单片机作为控制系统的核心。单片机是大规模集成电路技术发展的产物,它将中央处理器(CPU)、存储器(ROM/RAM)、输入输出接口、定时器/计数器等主要计算机部件集成在一片芯片上,因此单片机被称为单片微型计算机(Single Chip Microcomputer)。目前单片机是计算机家族中重要的一员。单片机配上适当的外围设备和软件,便可构成一个单片机应用系统。单片机具有功能强、体积小、价格低和抗干扰能力强等特点,被广泛应用于工农业生产、国防、科研及日常生活等各个领域。MCS-51系列单片机包括8051、8751和8031 三种产品,其硬件设计简单灵活。因此MSC-51单片机被誉为“控制领域中的最佳8位微型计算机”。 8051片内有4K的ROM。用户将已开发好的程序交给制造厂商,在制造芯片时用掩膜型工序将用户程序写入ROM。显然用户本身是无法将自己的程序写入8051芯片的21。程序一经写入片内ROM,用户也无法改变程序。所以8051用在批量较大时,经济上才合算。8751片内有4K的EPROM。用户可以用高压脉冲将用户程序写入片内EPROM。所以当用户的程序不长时使用这种芯片可简化电路,也可以作为开发系统片内8051ROM单片机的代用芯片。由于EPROM可通过照射紫外光线抹去原有程序进行改写,所以这类芯片也可以用于程序的开发工作。8031片内无ROM或EPROM,使用时必须配置外部的程序存储器EPROM。如不使用8051或8751芯片片内的ROM或EPROM即可将其作为8031使用。这种引脚相容的产品均可寻址64KB的外部程序存储器和64KB的外部数据存储器22。综合上述,选用8051作为控制系统的核心,其构成的成本低及不需要特殊的开发手段。8051内部没有ROM,外扩EPROM27256作为程序存储器,它具有价格低,使用灵活的优点。也可视具体情况换用831、8052、8751、8752、80C51、89C51、89C52等。其中,8031、8052、8751、8752的各个引脚输入/输出电平只与TTL电平兼容;80C51、80C52、80C31各引脚输入/输出电平既与TTL电平兼容,也与CMOS电平兼容。3.2.1 AT80C51芯片AT80C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。外部定时元件复位中断电源系统时钟ROMCPURAM串行I/O口并行I/O口定时/计数器图3.2 AT80C51单片机的内部结构3.2.2 引脚说明AT80C51单片机是标准的40引脚双列直插封装(DIP)集成电路芯片,引脚排列见图3.3。 图 3.3 AT80C51单片机引脚图其中,在40条引脚中有两条专用电源引脚,2条外接晶体的引脚,4条控制或其他电源复用的引脚,32条I/O引脚。40条引脚说明如下:40只引脚按其功能来分,可分为如下三类:1)电源及时钟引脚:Vcc、 Vss、 XTAL1、 XTAL2 Vss (20脚):接地。 Vcc (40脚) :正常操作、对EPROM编程时,接+5V。 XTAL1 (19脚)、XTAL2(18脚) :时钟引脚, 两个时钟引脚XTAL1 、XTAL2外接晶体与片内的反相放大器构成一个振荡器,它为单片机提供了时钟控制信号。2个时钟引脚也可外接独立的晶体振荡器。 XTAL1(19脚) :芯片内部振荡电路(单级反相放大器)输入端。 XTAL2(18脚) :芯片内部振荡电路(单级反相放大器)输出端。8051的时钟可以由两种方式产生,即内部时钟方式和外部时钟方式。内部时钟方式利用芯片内部的振荡电路,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路将自激振荡。可以用示波器观察到XTAL2输出的波形。定时元件可用晶体振荡器和电容组成并联谐振回路,外部振荡器是使用现成的外部振荡器产生的脉冲信号,常用于多片MCS-51单片机的同时工作,以便于多片MCS-51单片机之间的同步,一般为低于12MHZ的方波23。2)控制引脚:PSEN、 ALE、 EA、 RESET(即RST)。 RST(9脚):复位信号输入端。 当输入的复位信号延续两个机器周期(24个时钟振荡周期)以上的高电平时即为有效,用以完成单片机的复位初始化操作。单片机正常工作时,此脚应为小于或等于0.5V的低电平。 在8051单片机的时钟电路工作以后,RST引脚上出现24个振荡周期以上的高电平,8051单片机芯片内部初始复位。复位后,P0P3口输出高电平,即P0P3口的内容为FFH,初值07H写入栈指针SP,其余的特殊功能寄存器和程序计数器PC被清“0”。RST从高电平变为低电平后,8031单片机从0地址开始执行程序。8051单片机初始复位不影响内部RAM的状态,包括工作寄存器R0R7。8051单片机的复位方式有上电自动复位和手动按钮复位两种,另外,该引脚还具有复用功能。Vcc掉电期间,此引脚可接上备用电源,以保持内部RAM的数据。Vcc下降到低于规定的电平,而VPD在其规定的电平范围内,VPD就向内部RAM提供备用电源。 ALE(30脚):地址所存允许信号。 在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。当访问外部存贮器时(外部程序存贮器或外部数据存贮器),ALE的输出用于锁存地址的地位字节。 此外,由于即使不访问外部存贮器时,ALE是仍以晶振1/6的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。然而要注意的是,每当访问外部数据存贮器时,将跳过一个ALE脉冲。ALE端可以驱动8个LSTTL输入。 PSEN(29脚):外部程序存储器读选通信号。在读外部ROM时,PSEN有效(低电平),以实现外部ROM单元的读操作。当8051单片机访问外部程序存贮器时,将PC的16位地址输出到P2口和P0口外部地址寄存器后,PSEN产生负脉冲选通外部程序存贮器,相应的存贮器单元的指令字节送到P0口,供8051读取。只要看PSEN、ALE和XTAL2是否有信号输出,就可以判断出8051是否在工作。 EA(31脚):内/外程序存储器选择控制端。当EA信号为高电平时,单片机只访问内部存储器,不论是否有外部存储器,对于8051,因其有内部程序存储器,开机后,CPU首先访问4KB内部程序存贮器,然后再访问外部程序存贮器。当EA接地,则不使用内部程序存贮器,CPU取指令时,总是访问外部程序存贮器。3) I/O口引脚:P0、 P1、 P2、 P3,为4个8位I/O口的外部引脚。 P0口:P0.0P0.7(3932脚) P口是一个漏极开路的8位准双向I/O端口。作为漏极开路的输出端口,每位能驱动8个LS型TTL负载。当P0口作为输入口使用时,应先向锁存器(地址80H)写入全1,此时P0口的全部管脚浮空,可作为高阻抗输入。作输入口使用时要先写1,这就是准双向的含义。CPU访问片外存储器时,P0口是分时提供低8位地址和8位数据的复用总线。在此期间,P0口内部上拉电阻有效。 P1口:P1.0P1.7(18脚) P1口是一个带内部上拉电阻的8位准双向I/O端口。P1口的每一位能驱动(吸收或输出电流)4个LS型TTL负载。在P1口作为输入口使用时,应先向P1口锁存器(地址90H)写入全1,此时P1口管脚由内部上拉电阻接成高电平。 P2口:P2.0P2.7(P2128脚)P2口是一个带内部上接电阻的8位准双向I/O端口。P2口的每一位能驱动(吸收或输出电流)4个LS型TTL负载。 P3口:P3.0P3.7(P2128脚)P3口是一个带内部上接电阻的8位准双向I/O端口。P3口的每一位能驱动(吸收或输出电流)4个LS型TTL负载。P3口与其他I/O端口有很大区别,它除了作为一般准双向I/O口外,每个管脚还具有专门的功能。4)某些信号引脚的第二功能由于工艺及标准化等原因,芯片的引脚功能是有限的。因此就出现了需要与可能的矛盾,“兼职”是唯一可行的办法,即给一些信号引脚赋以双重功能(第二功能)。MCS-51某些引脚的第二功能如下: P3口的第二功能。P3口的8条口线都定义有第二功能。见表3.1:表3.1 P3口各引脚于第二功能引脚第二功能信号名称P3.0RXD串行数据接收P3.1TXD串行数据发送P3.1INT0外部中断0申请P3.3INT1外部中断1申请P3.4T0定时/计数器0的外部输入P3.5T1定时/计数器1的外部输入P3.6WR外部RAM写选通P3.7RD外部RAM读选通EPROM存储程序固化所需的信号。有内部EPROM的单片机芯片为写入程序需提供专门的编程脉冲和编程电源,这些信号也是由信号引脚以第二功能的形式提供的,即: 编程脉冲:30脚(ALE/PROG)对于EPROM型单片机,在EPROM编程期间,此引脚用于输入编程脉冲。 编程电压(21V):31脚(EA/VPP)对于EPROM型单片机,在EPROM编程期间,此引脚应施加21V的编程电源(VPP)。备用电源引入:由9脚(RST/VPD)引入,当电源发生故障,电压降低到下限值时,备用电源经此端向内部RAM提供电压,以保护内部RAM中的信息不丢失15。3.3显示电路 显示电路采用的方法一般包括两种:静态显示和动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多;动态显示的特点是显示稳定程度没有静态显示好,程序编写复杂,但是相对静态显示而言最大的优点是占用的端口资源少。由于本设计占用的端口较多因此采用动态显示。3.3.1 七段LED数码管的原理LED数码管显示器由8个发光二极管中的7个长条发光二极管(称七笔段)按a、b、c、d、e、f、g顺序组成“8”字形,另一个点形的发光二极管放在右下方,用来显示小数点。数码管按内部连接方式又分为共阳极数码管和共阴极数码管两种。若内部8个发光二极管的阳极连在一起接电源正极,就成为共阳极数码管;若8个发光二极管的阴极连在一起接地,测称为共阴极数码管。本次设计所用的到的共阴极数码管的引脚如图3.4所示,外部有9个引脚,其中9作为公共端接地。图3.4 一位共阴极数码管引脚图从LED数码的结构可以看出,不同笔段的组合就何以构成不同的字符,例如笔段b、c被点亮时,就可以显示数字1;当笔段a、b、c被点亮时,就可以显示数字7;只要控制7个发光二极管按一定要求亮与灭,就能显示出十六进制字符0F。将控制数码管显示字符的各字段代码称为显示代码或字段码。数码管显示码是表述二进制数与数码管所显示字符的对应关系的,如表3.2所示。对于共阴极数码管,由于8个发光二极管的阴极已连在一起接地,所以,只要控制各字段的正极,就可以控制发光二极管的亮与灭。 表3.2 七段显示译码器的真值表及段码表字 符h g f e d c b a字段码01 1 0 0 0 0 0 00 0 1 1 1 1 1 1共阳字码段C0H共阴字码段3FH11 1 1 1 1 0 0 10 0 0 0 0 1 1 0共阳字码段F9H共阴字码段06H21 0 1 0 0 1 0 00 1 0 1 1 0 1 1共阳字码段A4H共阴字码段5BH31 0 1 1 0 0 0 00 1 0 0 1 1 1 1共阳字码段B0H共阴字码段4FH41 0 0 1 1 0 0 10 1 1 0 0 1 1 0共阳字码段99H共阴字码段66H51 0 0 1 0 0 1 00 1 1 0 1 1 0 1共阳字码段92H共阴字码段6DH61 0 0 0 0 0 1 00 1 1 1 1 1 0 1共阳字码段82H共阴字码段7DH71 1 1 1 1 0 0 00 0 0 0 0 1 1 1共阳字码段F8H共阴字码段07H81 0 0 0 0 0 0 00 1 1 1 1 1 1 1共阳字码段80H共阴字码段7FH91 0 0 1 0 0 0 00 1 1 0 1 1 1 1共阳字码段90H共阴字码段6FHA1 0 0 0 1 0 0 00 1 1 1 0 1 1 1共阳字码段88H共阴字码段77HB1 0 0 0 0 0 1 10 1 1 1 1 1 0 0 共阳字码段83H共阴字码段7CHC1 1 0 0 0 1 1 00 0 1 1 1 0 0 1共阳字码段C6H共阴字码段39HD1 0 1 0 0 0 0 10 1 0 1 1 1 1 1共阳字码段A1H共阴字码段5EHE1 0 0 0 0 1 1 00 1 1 1 1 0 0 1共阳字码段86H共阴字码段79HF1 0 0 0 1 1 1 00 1 1 1 0 0 0 1共阳字码段8EH共阴字码段71H3.3.2显示电路整体设计显示电路如图3.5所示: 图3.5 显示电路图中RP1为电阻盒,在显示电路中作为上拉电阻。显示器由3个LED数码管组成,他们的公共端分别接单片机的P2.0P2.2口,单片机的这3个I/O口输出位选信号用于动态扫描。而所谓动态扫描就是指我们采用分时的方法,轮流控制各个LED数码管的公共端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位数码管的点亮时间是极为短暂的,但由于人的视觉暂留现象级发光二级管的余辉效应,尽管实际上个位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。而单片机的P0.0P0.7口则负责将字段码数据传送给LED数码管。3.4 键盘电路键盘电路的设计图如图3.6所示。图3.6 键盘电路在本设计中,设置了5个按键开关。P1.1口接开始/暂停键; P1.2口接设置键;P1.3口接加1键;P1.4口接设定切换;P1.5口接显示切换。开始/暂停键:在通电的情况下,且没有进入设置状态时,对系统进行开始和暂停操作。设置键:按下此键,进入设置状态,此时每按一次可通过+1调整键从温度的小数位开始进行温度的设置,直至温度的十位,然后退出温度设置状态。加1键:在设置状态时,可对设置位进行+1操作。设定切换:按下此键可以再恒定温度、上限温度和下限温度之间切换。显示切换:能在恒温温度,设定的上下限温度和实时温度之间切换。3.5温度采集电路温度采集电路如图3.7所示。 图3.7 温度采集电路图中U2为温度采集电路的核心器件,温度传感器DS18B20,下面详细对它进行介绍。3.5.1 DS18B20引脚及说明DS18B20引脚如图3.8所示。 图3.8 DS18B20引脚图1(GND):地2(DQ):单线运用的数据输入输出引脚3(VCC):可选的电源引脚3.5.2 DS18B20的参数和用法 DS18B20内部的低温度系数振荡器是一个振荡频率随温度变化很小的振荡器,为计数器1提供一频率稳定的计数脉冲。高温度系数振荡器是一个振荡频率对温度很敏感的振荡器,为计数器2提供一个频率随温度变化的计数脉冲。初始时,温度寄存器被预置成-55,每当计数器1从预置数开始减计数到0时,温度寄存器中寄存的温度值就增加1,这个过程重复进行,直到计数器2计数到0时便停止。初始时,计数器1预置的是与-55相对应的一个预置值。以后计数器1每一个循环的预置数都由斜率累加器提供。为了补偿振荡器温度特性的非线性性,斜率累加器提供的预置数也随温度相应变化。计数器1的预置数也就是在给定温度处使温度寄存器寄存值增加1计数器所需要的计数个数。DS18B20内部的比较器以四舍五入的量化方式确定温度寄存器的最低有效位。在计数器2停止计数后,比较器将计数器1中的计数剩余值转换为温度值后与0.25进行比较,若低于0.25,温度寄存器的最低位就置0;若高于0.25,最低位就置1;若高于0.75时,温度寄存器的最低位就进位然后置0。这样,经过比较后所得的温度寄存器的值就是最终读取的温度值了,其最后位代表0.5,四舍五入最大量化误差为1/2LSB,即0.25。温度寄存器中的温度值以9位数据格式表示,最高位为符号位,其余8位以二进制补码形式表示温度值。测温结束时,这9位数据转存到暂存存储器的前两个字节中,符号位占用第一字节,8位温度数据占据第二字节。 DS18B20测量温度时使用特有的温度测量技术。DS18B20内部的低温度系数振荡器能产生稳定的频率信号;同样的,高温度系数振荡器则将被测温度转换成频率信号。当计数门打开时,DS18B20进行计数,计数门开通时间由高温度系数振荡器决定。芯片内部还有斜率累加器,可对频率的非线性度加以补偿。测量结果存入温度寄存器中。一般情况下的温度值应该为9位,但因符号位扩展成高8位,所以最后以16位补码形式读出。DS18B20工作过程一般遵循以下协议:初始化ROM操作命令存储器操作命令处理数据 初始化单总线上的所有处理均从初始化序列开始。初始化序列包括总线主机发出一复位脉冲,接着由从属器件送出存在脉冲。存在脉冲让总线控制器知道DS1820 在总线上且已准备好操作。 ROM操作命令一旦总线主机检测到从属器件的存在,它便可以发出器件ROM操作命令之一。所有ROM操作命令均为8位长。这些命令列表如下:Read ROM(读ROM)33HMatch ROM( 符合ROM)55HSkip ROM( 跳过ROM )CCHSearch ROM( 搜索ROM)F0HAlarm Search(告警搜索)ECH 存储器操作命令Write Scratchpad(写暂存存储器)4EHRead Scratchpad(读暂存存储器)BEHCopy Scratchpad(复制暂存存储器)48HConvert T(温度变换)44HRecall E2(重新调整E2)B8HRead Power Supply(读电源)B4H 处理数据DS18B20的高速暂存存储器由9个字节组成。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后。 DS18B20温度采集转化后得到的12位数据,存储在DS18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于或等于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度24。温度转换计算方法举例:例如当DS18B20采集到+125的实际温度后,输出为07D0H,则:实际温度=07D0H0.0625=20000.0625=125.0。例如当DS18B20采集到-55的实际温度后,输出为FC90H,则应先将11位数位取反加1得370H(符号位不变,也不作为计算),则:实际温度=370H0.0625=8800.0625=55.0。3.6 时钟频率电路单片机必须在时钟的驱动下才能工作,在单片机内部有一个时钟振荡电路,只需要外界一个振荡源就能产生一定周期的时钟信号送到单片机内部的各个单元,决定单片机的工作频率,其时钟电路如图3.9所示。 图3.9 外部振荡电路 一般选用石英晶体振荡器。此电路大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要有石英晶体的频率确定。电路中两个电容C3、C4的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C3、C4的典型值为30pF。单片机工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期,其大小是时钟信号频率的倒数,时钟信号频率常用fosc表示。图中时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12s。3.7 复位电路单片机的第9脚RESET为硬件复位电路,只要在该端加上持续4个机器周期的高电平即可实现复位,复位后单片机的各个状态都恢复到初始化状态,其电路图如图3.10所示。图3.10 复位电路图3.10中由按键以及电容C5、电阻R18、R17构成上电复位及手动电路。由于单片机是高电平复位,所以上电复位时,接通电源即可,当上电后,由于电容C5开始缓缓充电,则图中电路由5V电源到电容到电阻R17和地之间形成一个通路,由于在R17
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025安徽宿州市立医院招聘编外人员42人考前自测高频考点模拟试题附答案详解(典型题)
- HLX26-生命科学试剂-MCE
- 2025江苏盐城工学院招聘专职辅导员13人模拟试卷含答案详解
- 2025年激光扫瞄显微镜项目发展计划
- 2025年长城钻探工程公司春季招聘(20人)考前自测高频考点模拟试题及答案详解参考
- 房产买卖协议表
- 广州课件配音服务平台
- 2025年吡咯并吡咯二酮类项目建议书
- 2025湖北武汉市通城县事业单位高层次和急需紧缺人才引进48人考前自测高频考点模拟试题及答案详解(夺冠系列)
- 美妆行业全球市场健康美肤潮流趋势
- 生物质压缩成型工艺与实践考核试卷
- 【物业分享】神秘顾客(交付项目物业服务体验)调查评分表
- 铝合金门窗来料加工合同范本
- 水杨酸软膏剂的制备
- MSA分析报告样本
- 基础应用化学(高职)全套教学课件
- 《铁皮石斛的介绍》课件
- 低压配电柜技术规范书
- 《隐身技术概述》课件
- 中学食堂运营管理制度
- 荔浦扣肉项目商业计划书
评论
0/150
提交评论