![基于单片机数字温湿度控制器的设计_第1页](http://file4.renrendoc.com/view10/M03/18/2E/wKhkGWVtI4qAKHgjAASFebqFxhw080.jpg)
![基于单片机数字温湿度控制器的设计_第2页](http://file4.renrendoc.com/view10/M03/18/2E/wKhkGWVtI4qAKHgjAASFebqFxhw0802.jpg)
![基于单片机数字温湿度控制器的设计_第3页](http://file4.renrendoc.com/view10/M03/18/2E/wKhkGWVtI4qAKHgjAASFebqFxhw0803.jpg)
![基于单片机数字温湿度控制器的设计_第4页](http://file4.renrendoc.com/view10/M03/18/2E/wKhkGWVtI4qAKHgjAASFebqFxhw0804.jpg)
![基于单片机数字温湿度控制器的设计_第5页](http://file4.renrendoc.com/view10/M03/18/2E/wKhkGWVtI4qAKHgjAASFebqFxhw0805.jpg)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机数字温湿度控制器的设计摘要本设计详细地阐述了以单片机为处理器的温湿度自动测控系统的硬件、软件及可靠性设计等问题。该系统以ATMEI公司的AT89S52单片机为核心,由传感检测电路、信号处理电路、外设(键盘、显示器、驱动等)配置接口电路、输出控制电路、以及报警电路等构成。它能够实现多路采集输入和多路输出控制功能,通过传感器实现自动闭环控制和开环控制等控制模式,并具有系统故障报警和参数越限报警功能。硬件设计方面,空气湿度的检测采用经济实用的HIH-3610相对湿度传感器,它是热固聚脂电容式具有信号处理功能的传感器;空气的温度检测,采用了美国达拉斯(DALLAS)半导体公司推出的应用单总线技术的数字温度传感器。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯片上。既方便又经济。键盘、显示局部分别采用了独立式按键和LED数码管;故障以及越限报警;采用压电式蜂鸣器;输出控制电路由三极管、继电器等组成。软件设计采用了目前流行的模块化编程方法,软件的开发全部采用了实时性很强的汇编语言。主要程序模块包括:温度模块;键盘显示程序模块;A/D转换程序;看门狗程序模块等。为了提高系统的可靠性,在软硬件设计方面均采取了相应的抗干扰措施。关键词:AT89S52单片机;湿度传感器;温度传感器;A/D转换。如需此论文Word版本,单片机程序/单片机技术支持,请访问:嵌入式应用软件园。TheDesignofDigitalTemperatureandHumidityControllerBasedonSingle-chipMicrocomputerABSTRCTThisdesigndescribedinAutomaticTemperatureandHumidityControlSystemwhichuseMCUforitsprocessor,andsolvethehardware、softwareanddesignreliabilityandsoon.ThissystemuseAT89S52forCPUwhichbelongtoATMELcompany,andincludingsensingcircuit、signalprocessingcircuit、peripheralinterfacecircuitconfiguration(keyboards,monitors,harddrives,etc)、outputcontrolcircuit、AlarmCircuitandsoon.ThesystemcanSamplemulti-channelinputsandmulti-channeloutputscontrolfunction,Throughsensortoachieveautomaticclosed-loopcontrolandOpen-loopcontrolmode,meanwhileitcanAlarmwhenthereissomethingwrongwiththesystemandparameterslimit.Inhardwaredesignaspect,theairhumidityexaminationusestheeconomicalpracticalHIH-3610relativehumiditysensor.Whichisthethermosettinggathersthefatelectriccapacityanyhavinghavethesignalprocessingfunctionsensor,airtemperatureexaminationhasusedthesinglemainlinetechnologydigitaltemperaturesensorwhichAmericanDallas(DALLAS)SemiconductorCompanypromotes.Thiscomponentsemiconductorsetswarmsensitivecomponent,A/Dswitch,thememoryandsoondoonaverysmallintegratedcircuitchip.Whichisfacilitatedandtheeconomic.Thekeyboard,andthedemonstrationparthaveusedthefreestandingpressedkeyandtheLEDnumericalcodeseparately;Thebreakdownaswellastheoverstepreporttothepolice;usesthepiezoelectricitytypebuzzer;theoutputcontrolcircuitiscomposedofthetriode,therelayandsoon.Theofsoftwaredesignhasusedthepresentpopularmodulationprogrammingmethod,thesoftwaredevelopedhascompletelyusedverystrongassemblylanguage.Themainprogrammoduleincludes:Temperaturemodule;Keyboarddemonstrationprogrammodule;A/Dtransformationprocedure;Watch-dogprogrammoduleandsoon..Inordertoenhancethesystemthereliability.Thisarticlehastakenthecorrespondingantjammingmeasureinthesoftwareandhardwaredesignaspect.Keywords:AT89S52monolithicintegratedcircuit.Humiditysensor;Temperaturesensor;A/Dtransforms.目录引言图2-1系统结构图下面就对各个功能模块或芯片进行详细介绍。2.1AT89S52单片机及其晶振电路功能特性描述AT89S52是一种低功耗、高性能CMOS八位微控制器,具有8K在系统可编程Flash存储器,使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许ROM在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使其为众多嵌入式控制应用系统提供灵活的解决方案。其主要特性为:●与MCS-51单片机产品兼容;●8K字节在系统可编程Flash存储器;●1000次擦写周期;●全静态操作:0Hz~33Hz;●三级加密程序存储器;●32个可编程I/O口线;●三个16位定时器/计数器;●八个中断源;●全双工UART串行通道;●低功耗空闲和掉电模式;●掉电后中断可唤醒;●看门狗定时器;●双数据指针;●掉电标识符。AT89S52芯片的引脚图见图2-2P1.0P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST93.0/RXD103.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P3.6/WR16P3.7/RD17XTAL118XTAL219Vss20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE30EA31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039Vcc40图2-2AT89S52的引脚图VCC:电源Vss:地P0口:8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”在Flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口:具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流〔IILP2口:具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动四个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流〔IIL〕表2-1P1口引脚的第二功能引脚号第二功能P1.0T2〔定时器/计数器T2的外部计数输入〕,时钟输出P1.1T2EX〔定时器/计数器T2的捕捉/重载触发信号和方向控制〕P1.5MOSI〔在系统编程用〕P1.6MISO〔在系统编程用〕P1.7SCK〔在系统编程用〕在Flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动四个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流〔IILP3口亦作为AT89S52特殊功能〔第二功能〕使用,如下表所示。在Flash编程和校验时,P3口也接收一些控制信号。表2-2P3口引脚的第二功能引脚号第二功能P3.0RXD〔串行输入〕P3.1TXD〔串行输出〕P3.2〔外部中断0〕P3.3〔外部中断1〕P3.4T0〔定时器0外部输入〕P3.5T1〔定时器1外部输入〕P3.6〔外部数据存储器写选通〕P3.7〔外部数据存储器读选通〕RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊存放器AUXR〔地址8EH〕上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/:控制信号〔ALE〕是访问外部程序存储器时,锁存低8位地址的输出脉冲。在Flash编程时,此引脚〔〕也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1〞,ALE操作将无效。这一位置“1〞,ALE仅在执行MOVX或MOVC指令时有效。否那么,ALE将被微弱拉高。这个ALE使能标志位〔地址为8EH的SFR的第0位〕的设置对微控制器处于外部执行模式下无效。:外部程序存储器选通信号〔〕是外部程序存储器选通信号。当89S52从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而在访问外部数据存储器时,将不被激活。/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接地。为执行内部程序指令,应该接VCC。在Flash编程期间,也接收12伏VPP电压。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。2.1.2AT89S52晶振连接电路AT89S52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器。从外部时钟源驱动器件的话,XTAL2可以不接,而从XTAL1接入,如图2-4。在本设计系统中采用的是外部振荡电路连接法,如图2-3所示。图2-3内部振荡电路连接图图2-4外振振荡电路连接图〔石英晶振C1,C2=30PF±10PF陶瓷谐振器C1,C2=40PF±10PF〕2.2看门狗复位电路当系统CPU不能正常工作时,有可能会造成死机、信息丧失、运行不稳定等故障。为了解决这些问题,实现系统平安可靠、稳定、实时运行,可以采用集可编程看门狗、电压监控、E2PROM等功能于一身的X5045芯片。这种组合设计有效地减少了硬件电路的复杂程度。X5045中的看门狗对系统提供了保护功能。当系统发生故障而超过设置时间时,电路中的看门狗将通过RESET信号向CPU做出反响。X5045提供了三个时间值供用户选择使用。它所具有的电压监控功能还可以保护系统免受低电压的影响,当电源电压降到允许范围以下时,系统将复位,直到电源电压返回到稳定值为止。X5045的存储器与CPU可通过串行通信方式接口。引脚介绍:X5045的引脚图可参见图2-5。它共有8个引脚:图2-5X5045的引脚图表2-3引脚功能描述引脚名称功能描述1/WDI芯片选择输入:当是高电平时,芯片末选中,并将SO置为高阻态。器件处于标准的功耗模式,除非一个向非易失单元写的周期开始。在是高电平时,将拉低将使器件处于选择状态,器件将工作于功耗状态。在上电后任何操作之前,必须要有一个高变低的过程。看门狗输入:在看门狗定时器超时并产生复位之前,一个加在WDI引脚上的由高到低的电平变化将复位看门狗定时器。2SO串行输出:SO是一个推/拉串行数据输出引脚,在读数据时,数据在SCK脉冲的下降沿由这个引脚送出。3写保护:当引脚是低电平时,向X5045中写的操作被禁止,但是其它的功能正常。当引脚是高电平时,所有操作正常,包括写操作。如果在是低的时候,变为低电平,那么会中断向X5045中写的操作,但是,如果此时内部的非易失性写周期己经初始化了,变为低电平不起作用。4VSS地。5SI串行输入:SI是串行数据输入端,指令码、地址、数据都通过这个引脚进行输入。在SCK的上升沿进行数据的输入,并且高位(MSB)在前。6SCK串行时钟:串行时钟的上升沿通过SI引脚进行数据的输入,下降沿通过SO引脚进行数据的输出。7RESET复位输出:RESET下是一个开漏型输出引脚。只要Vcc下降到最小允许Vcc值,这个引脚就会输出高电平,一直到Vcc上升超过最小允许值之后200ms。同时它也受看门狗定时器控制,只要看门狗处于激活状态,并且WDI引脚上电平保持为高或者为低超过了定时的时间,就会产生复位信号。引脚上的一个下降沿将会复位看门狗定时器。由于这是一个开漏型的输出引脚,所以使用时必须接上拉电阻。8VCC正电源。X5045的状态存放器描述了器件的当前状态,各位意义如下所示。表2-4X5045状态存放器各位定义7654321000WD1WD0BL1BL0WELWIP其中,WD1、WD0是看门狗定时时间设置位;BL1、BL0是存储单元写保护区设置位;WEL是只读标志,1说明写使能开关翻开;WIP也是只读标志,1代表芯片内部正处于写周期。电复位时,各位都被清零。X5045芯片功能包括以下4种:〔1〕上电复位控制。在对X5045通电时,RESET引脚输出有效的复位信号,并保持至少200ms,使CPU有效复位。〔2〕电源电压监控。当检测到电源电压低于内部门槛电压VTRIP时,RESET输出复位信号,直至电源电压高于VTRIP并保持至少200ms,复位信号才被撤消。VTRIP的出厂值根据芯片型号不同共有5个级别的电压范围。对于需要电源电压精确监控的应用,用户可以搭建编程电路,对芯片内VTRIP电压进行微调。〔3〕看门狗定时器。芯片内部状态存放器的WD1、WD0是看门狗定时设置位,通过状态存放器写指令WRSR修改这两个标志位,就能在三种定时间隔中进行选择或关闭定时器。对看门狗的复位由输入电平的下降沿完成。下表是WD1、WD0组合的含义。表2-5WD1、WD0组合定义WD1WD0看门狗定时值001.4s01600ms10200ms11禁止看门狗工作〔4〕串行E2PROM。芯片内含512字节存储单元,10万次可擦写,数据保持时间100年,并设计了3种保护方式防止误写。包括:=1\*GB3①写保护引脚,当引脚被拉低时,内部存储单元状态存放器都禁止写入;=2\*GB3②存储区域写保护模式,通过对状态存放器的BL1、BL0位的设置,可以选择对不同的存储区域进行写保护;=3\*GB3③在进行任何写操作前都必须翻开写使能开关,而且在上电初始化写操作完成时,写使能开关自动关闭。显然,在几方面的保护之下,产生误写的可能性极小,下表是BL1、BL0组合的含义。表2-6BL1、BL0组合定义BL1BL0写保护的单元地址00没有保护01180H~1FFH10100H~1FFH11000H~1FFH〔1〕WREN和WRDI是写使能开关的开/关指令。它们都是单字节指令。〔2〕RDSR和WRSR是状态存放器的读/写指令。在从SI输入指令后,RDSR的执行结果,即状态存放器内容须从SO读出;而WRSR需要紧接着输入修改数据。〔3〕READ和WRITE是存储单元的读/写指令。输入指令后〔指令的位三用于选择存储器的上半区和下半区〕,接着输入低八位地址,最后就可以连续读出或写入数据。其中,读指针和写指针的工作方式完全不同,读指针的全部8位用来计数,0FFH溢出后变成00H;写指针只用最低两位计数,XXXXXX11B溢出后变成XXXXXX00B,所以连续写的实际结果是在4个单元中反复写入。另外,由于E2PROM的写入时间长,所以在连续两条写指令之间应读取WIP状态,只有内部写周期结束时才可输入下一条写指令。芯片内部共有6条指令,如下表所列。表2-7X5045内部指令命令名称命令格式内
容WREN00000110翻开写使能开关WRDI00000100关闭写使能开关RDSR00000101读状态存放器WRSR00000001写状态存放器READ0000A8011读存储单元WRITE0000A8010写存储单元对X5045的操作是通过4根口线、SCK、SI和SO进行同步串行通信来完成的。X5045与AT89S52单片机的连接电路图见图2-14。SCK是外部输入的同步时钟信号,在对芯片进行写入指令或数据时,时钟前沿将SI引脚信号输入;在读取数据时,时钟后沿将数据位输出到SO引脚上。数据的输入、输出都是高位在先。图2-6X5045与AT89S52单片机连接电路图综上所述,并基于图2-6电路产生复位信号的条件,只要满足以下任意一个条件,就将使系统产生复位,迫使程序从起点执行。〔1〕该芯片在其上电后自产生复位信号,这样就实现单片机的上电自动复位;〔2〕当电源VCC低于规定值时,〔如VCC=5V,那么规定值为4.25~2.5V〕,将产生复位信号。这样就实现系统电源的掉电复位;〔3〕当程序在编程选择的时间里没有访问X5045时,即没有一个喂狗语句,那么看门狗〔WDT〕将起作用,RST将产生复位信号,迫使单片机复位。2.3温度信号采集模块DS18B20芯片简介DS18B20是美国达拉斯(DALLAS)半导体公司推出的应用单总线技术的数字温度传感器。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯片上。本设计中温度传感器之所以选择单线数字器件DS18B20,是在经过多方面比拟和考虑后决定的,主要有以下几方面的原因:〔1〕系统的特性:测温范围为-55℃~+125℃,测温精度为士0.5℃;温度转换精度〔2〕系统本钱:由于计算机技术和微电子技术的开展,新型大规模集成电路功能越来越强大,体积越来越小,而价格也越来越低。一支DS18B20的体积与普通三极管相差无几,价格只有十元人民币左右。〔3〕系统复杂度:由于DS18B20是单总线器件,微处理器与其接口时仅需占用1个I/O端口且一条总线上可以挂接几十个DS18B20,测温时无需任何外部元件,因此,与模拟传感器相比,可以大大减少接线的数量,降低系统的复杂度,减少工程的施工量。使测温系统的线路结构设计和硬件开销大为简化。〔4〕系统的调试和维护:由于引线的减少,使得系统接口大为简化,给系统的调试带来方便。同时因为DS18B20是全数字元器件,故障率很低,抗干扰性强,因此,减少了系统的日常维护工作。DS18B20采用3脚封装如图2-7所DS18B20DS18B20VDDDQGNDVDDDQGND图2-7DS18B20引脚图引脚说明:1.GND接地2.DQ数字输入/输出3.VDD可选的电源DS18B20的温度测量DS18B20的核心功能是其数字温度传感器,其温度与数字量的关系如表2-8所示。温度传感器的测量结果被用户定义为9,10,11或12位,其各自的准确度为0.5、0.25、0.125、0.0625。DS18B20测得温度数据在温度存放器中被存为带标志位的16位数,标志位S表示温度是正是负,为正那么S=0,为负那么S=1,如果DS18B20设定为12位结果,温度存放器中所有位将包含有数据;对于11位结果,0位未定义;10位结果,0位和1位未定义;9位结果位2、位1和位0未定义。表2-9是DS18B20内部存储器,表2-10是DS18B20温度存储格式与配置存放器控制字的格式。由表2-8可知,检测温度由两个字节组成,字节1的高5位S代表符号位,字节0的低4位是小数局部,中间7位是整数局部。字节4是配置存放器控制字的格式,当主机发出温度转换命令〔44H〕时,启动温度转换过程,转换时间最长750ms。主机通过读存放器命令〔BEH〕,将温度值读出。通过写存放器功能命令,改变分辨率的设置。表2-8温度和数字量的关系温度数字输出〔二进制〕数字输出〔十六进制〕+1250000011111010000B07D0H+850000010101010000B0550H+25.06250000000110010001B0191H+10.1250000000010100010B00A2H+0.50000000000001000B0008H00000000000000000B0000H-0.51111111111111000BFFF8H-10.1251111111101011110BFF5EH-25.06251111111001101111BFE6FH-551111110010010000BFC90H表2-9DS18B20内部存储器字节ROMRAM0产品代号〔28H〕温度低8位148位器件序列号温度高8位248位器件序列号TH348位器件序列号TL448位器件序列号配置存放器548位器件序列号保存648位器件序列号保存7CRC保存8CRCE2PROMTHTL配置存放器表2-10温度存储格式与配置存放器控制字格式Bite7Bite6Bite5Bite4Bite3Bite2Bite1Bite0字节0232221202-12-22-32-4字节1SSSSS2-62-52-4字节40R1R011111温度报警信号DS18B20完成温度转换后,就把测得的温度值与TH,TL作比拟。假设T>TH或T<TL,那么将该器件内的报警标志置位,并对主机发出的告警搜索命令作出响应。因此,多只DS18B20同时测量温度并进行报警搜索,一旦某测温点越限,主机利用报警搜索命令,即可识别正在报警的器件,并读出其序列号。温度传感器的登记每一个DS18B20在接入系统工作前,必须先进行登记注册。在每台分机上都有一个登记注册端口,DS18B20在接入系统前,先接到登记注册端口,确认后,CPU将DS18B20的物理位址(8个BYTE)读出,然后存入到E2PROM中刚刚设定的逻辑地址上,DS18B20在E2PROM中逻辑地址定义见表2-11。表2-11存储器中逻辑地址定义A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A000P1P2P3L1L2L3D1D2D3D4XXXX表中各位表示的意义如下:A15A14存储操作标志(为固定值00)A13A12AA10A9AA7A6AA3A2ADS18B20的通信协议数字式温度传感器和模拟传感器最大的区别,是将温度信号直接转化成数字信号,然后通过串行通信的方式输出。因此掌握DS18B20的通信协议是使用该器件的关键。所有的DS18B20器件要求采用严格的通信协议,以保证数据的完整性。该协议定义了几种信号类型:复位脉冲、应答脉冲时隙;写“0〞写“1〞时隙;读“0〞读“1〞时隙。与DS18B20的通信,是通过操作时隙完成单总线上的数据传输。发送所有的命令和数据时,都是字节的低位在前,高位在后。〔1〕复位和应答脉冲时隙每个通信周期起始于微控制器发出的复位脉冲,其后跟DS18B20发出的应答脉冲。在写时隙期间,主机向DS18B20器件写入数据,而在读时隙期间,主机读入来自18B20的数据。在每一个时隙,总线只能传输一位数据。〔2〕写时隙当主机将单总线DQ从逻辑高〔空闲状态〕拉为逻辑低时,即启动一个写时隙。所有的写时隙必须在60~120us完成,且在每个循环之间至少需要1us的恢复时间。写0和写1时隙如图2-4所示。在写0时隙期间,微控制器在整个时隙中将总线拉低,而写1时隙期间,微控制器将总线拉低,然后在时隙起始后15us之后释放总线。图2-8写图2-8写“0〞和写“1〞时隙写“0”时隙1us〈Trec〈∞〉1us写“160~120usVP–––––––––––––––––––––––––––––GND––––––––––––––––DS18B20采样DS18B20采样15us45us15us45us(3)读时隙DS18B20器件仅在主机发出读时隙时才向主机传输数据,所以在主机发出读数据命令后,必须马上产生读时隙,以便DS18B20能够传输数据。所有读时隙至少需要60us,且在两次独立的读时隙之间,至少需要1us的恢复时间。每个读时隙都有主机发起,至少拉低总线1us。读时隙如图2-5所示,在主机发起读时隙之后,DS18B20器件才开始在总线上发送“0”或“1”,假设DS18B20发送“1”,那么保持总线为高电平。假设发送“0”,那么拉低总线当发送“0”读“0〞时隙1us〈Trec〈∞读“1〞时隙图2-9图2-9读‘0’和‘1’时隙VP––––––––––––––––––––––––––––主机采样〉1us主机采样〉1us15us45us15usDS18B20与单片机的接口电路DS18B20只有三根外引线:单线数据传输总线端口DQ,外供电源线VDD,共用地线GND。DS18B20有两种供电方式:一种为数据线供电方式,此时VDD接地,它是通过内部电容在空闲时从数据线获取能量,来完成温度转换,相应的完成温度转换的时间较长。这种情况下,用单片机的一个I/O口来完成对DS18B20总线的上拉。另一种是外部供电方式(VDD接+5V),相应的完成温度测量的时间较短。在本设计中采用外部供电方式实现DS18B20传感器与单片机的连接,其接口电路如图2-10所示。图2-10温度传感器DS18B20与单片机的连接2.4湿度的信号采集模块湿度的检测方法,一般采用湿敏元件检测,分为湿敏电阻和湿敏电容两种情况。基于本次设计,我就采用了HIH-3610相对湿度传感器它是一种热固聚脂电容式传感器。采集到的湿度信号再配以进行适当的放大,经过A/D转换送至单片机。实现湿度的显示与控制。电路连接图如图2-11所示。其湿度传感器我就一个湿敏电阻代替一下。图2-11湿度检测模块与单片机的连接图HIH-3610相对湿度传感器Honeywell相对湿度传感器是热固聚脂电容式具有信号处理功能的传感器,线形放大输出、工厂标定,独特的多曾结构能非常好地抵环境的侵蚀,诸如湿气、尘埃、赃物、油、及一些化学品。传感器结构包括一和热固聚合物保护层的平板电容,可抵抗脏污、灰尘、油物及其他侵入。其实物图如图2-12所示图2-12HIH3610湿度传感器实物图特点:低本钱,大批量OEM设计0.05″和0.1″两种引脚间距可选精度2%,激光修正互换性止5%低功耗设计:200谬安驱动电流快速反响:15秒稳定性好、低漂移、抗化学腐蚀性能HIH-3610湿度传感器是为大批量OEM设计、具有仪表级测量性能、低本钱SIP封装。线形放大的电压输出可使器件直接与控制器或其他器件一致性好,减少和消除OEM生产标定费用,并且厂家可提供单个传感器标定数据。HIH-3610湿度传感器的输出电压与相对湿度值有一定的比例关系,图2-13所示给出了几种温度下的线形关系。图2-13输出电压与相对湿度曲线由图可知:在0℃时相对湿度与电压的关系电压=0.0357*相对湿度+0.8在25℃时相对湿度与电压的关系电压=0.0310*相对湿度+0.8在85℃时相对湿度与电压的关系、电压=0.070*相对湿度+0.82.4.2HA17358F运算放大器运算放大器在电路中发挥重要的作用,其应用已经延伸到汽车电子、通信、消费等各个领域,并将在支持未来技术方面扮演重要角色。传感器+运算放大器+A/D+处理器是运算放大器的典型应用电路,在这种应用中,一个典型的问题是传感器提供的电流非常低,在这种情况下,必须完成信号放大,使之适用于单片机的数据采集系统。而放大器的种类很多,不同传感器放大器的选择有着不同的选择标准,基于本次设计可以配备统一的电源等个方面考虑,HA1358F放大器是个很好的选择,而且可以双重操作,广泛用于控制设备中。HA17358其引脚图如2-14所示。图2-14HA17358引脚图HA17358F其引脚功能如下:引脚主要功能1运放A输出2运放A反相输入3运放A同相输入4地5运放B同相输入6运放B反相输入7运放B输出8电源Vcc2.4.3A/D转换电路本电路设计A/D转换局部主要核心局部就是我精选的高性价比的A/D转换芯片TLC549,以下进行详细介绍1.A/D转换芯片介绍TLC549是德州仪器公司生产的8位串行A/D转换器芯片,可与通用微处理器、控制器通过I/OCLOCK、、DATA三条口线进行串行接口。具有4MHz片内系统时钟和软、硬件控制电路,转换时间最长17μs,TLC548允许的最高转换速率为45500次/s,TLC549为40000次/s。总失调误差最大为±0.5LSB,典型功耗值为6mW。采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,VREF-接地,VREF+-VREF-≥1V,可用于较小信号的采样。TLC549引脚图如下列图所示:DATAOUTI/OCLOCK45GNDDDATAOUTI/OCLOCK45GNDDREF—ANALOGIN236781REF+VCC图2-15TLC549引脚图TLC549的极限参数如下:电源电压:6.5V;输入电压范围:0.3V~VCC+0.3V;输出电压范围:0.3V~VCC+0.3V;峰值输入电流(任一输入端):±10mA;总峰值输入电流(所有输入端):±30mA;工作温度:0℃~70℃TLC549I:-40℃~85℃TLC549M:-55℃~125℃2.TLC549工作原理TLC549有片内系统时钟,该时钟与I/OCLOCK是独立工作的,无须特殊的速度或相位匹配。当CS为高时,数据输出(DATAOUT)端处于高阻状态,此时I/OCLOCK不起作用。这种CS控制作用允许在同时使用多片TLC549时,共用I/OCLOCK,以减少多路(片)A/D并用时的I/O控制端口。一组通常的控制时序为:(1)将置低。内部电路在测得下降沿后,再等待两个内部时钟上升沿和一个下降沿后,然后确认这一变化,最后自动将前一次转换结果的最高位(D7)位输出到DATAOUT端上。(2)前四个I/OCLOCK周期的下降沿依次移出第2、3、4和第5个位(D6、D5、D4、D3),片上采样保持电路在第4个I/OCLOCK下降沿开始采样模拟输入。(3)接下来的3个I/OCLOCK周期的下降沿移出第6、7、8(D2、D1、D0)个换位。(4)最后,片上采样保持电路在第8个I/OCLOCK周期的下降沿将移出第6、7、8(D2、D1、D0)个转换位。保持功能将持续4个内部时钟周期,然后开始进行32个内部时钟周期的A/D转换。第8个I/OCLOCK后,必须为高,或I/OCLOCK保持低电平,这种状态需要维持36个内部系统时钟周期以等待保持和转换工作的完成。如果为低时I/OCLOCK上出现一个有效干扰脉冲,那么微处理器/控制器将与器件的I/O时序失去同步;假设为高时出现一次有效低电平,那么将使引脚重新初始化,从而脱离原转换过程。在36个内部系统时钟周期结束之前,实施步骤(1)~(4),可重新启动一次新的A/D转换,与此同时,正在进行的转换终止,此时的输出是前一次的转换结果而不是正在进行的转换结果。假设要在特定的时刻采样模拟信号,应使第8个I/OCLOCK时钟的下降沿与该时刻对应,因为芯片虽在第4个I/OCLOCK时钟下降沿开始采样,却在第8个I/OCLOCK的下降沿开始保存。图2-16所示为TLC549工作的时序图。图2-16TLC549工作时序图3.TLC549与单片机的连接本设计采用TLC549与单片机AT89S52相连实现电信号的转换与采集,TLC549具有转换误差小,与单片机接口简单的特点,连接图如下列图2-17图2-17TLC549与单片机AT89S52的连接图2.5键盘与显示电路LED显示电路设计在单片机系统中,发光二极管(LED)常常作为重要的显示手段,它既可以显示系统的状态,又可以显示数字和字符。由于LED显示器的驱动电路简单,易于实现且价格低廉,因此是工业仪表和实验室仪器常用的一种输出显示设备。LED显示器是LED显示器的一种,它是将多个发光二极管集中在一块,构成阿拉伯数字笔画的形状。这些发光二极管共用一个或两个公共极,为数字信息的显示提供了方便。LED显示器的驱动方法分静态和动态两种。所谓动态是指LED显示器上的信息是通过不断地刷新(即周期性的驱动)维持的。动态驱动的优点是连线比静态方式大为减少,它是数码显示器常用的一种方式。静态驱动编程简单,但占用I/O口较多。本设计采用74LS164驱动4位LED显示的动态扫描驱动方式。1、芯片介绍74LS164是8位串入并出移位存放器,其芯片引脚如图2-18所示。图2-1874LS164引脚图引脚功能如下:A与B—串行数据输入,每个输入可以作为另一个输入的高电平有效输入,在使用时,两个输入端必须相连,而不同输入端必须接高电平。CLK—时钟信号,高电平有效。MR/—清零复位端,低电平有效。Q0-Q7—数据输出端。74LS164的真值表为表2-12示:表2-1274LS164的真值表输入输出MR/CLKABQAQBQCQDQEQFQGQHLXXXLLLLLLLLHLXXQA0QB0QC0QD0QE0QF0QG0QH0HHHHQAnQBnQCnQDnQEnQFnQGnHLXLQAnQBnQCnQDnQEnQFnQFnHXLLQAnQBnQCnQDnQEnQFnQFn在使用时将A、B并接作为数据的串行输入端DIO,CLK作为时钟端。串行输入时,先将数据在A、B端准备好,在CLK端产生一上升沿,那么一位数据移至最低位Q0;再将下一位数据准备好后,在CLK端产生下一上升沿,那么下一位数据移至次低位Q1,其余位顺次从低位到高位移动。这种时序符合串行器件特性,即把74LS164当成一典型串行外设,用具有串行外设接口的单片机很简单地传入数据,也可以用普通I/O口模拟其时序将数据移入。74LS164为一般TTL器件,其并行输出端(Q0~Q7)带拉电流负载能力很弱(约400uA),在带电流负载时,每位可允许最大电流8mA,所以在电路连接时,用其并出端连LED的“段〞,而“位〞那么需要驱动控制。2、74LS164与AT89S52连接74LS164与AT89S522-19所示,图中由于P0口的驱动能力有限,在此我们采用二极管来增加其驱动能力。LED动态显示的原理:首先以串行方式向LED显示器数据端口发送第一个8位数据,这时发送位码数据到P0口,此时由于P0.4位低电平而其他口都为高电平,因此LED1数码管显示该数码。这样我们可以发送第二个数据,同样我们应使其对应的位码为低电平且保证其它位为高电平。以此类推对各显示器进行扫描,显示器分时轮流工作。显然每次只有一个显示器显示,但由于人的视觉暂留现象我们仍会感觉所有的显示器都在同时显示。它的优点是:硬件电路简单,占用较少的I/O口,但其传输数速度较慢。图2-19显示电路的连接2.5.2前面设计的控制面板中带一个键盘,这里的键盘我并没有用专业的键盘。因为如果利用通讯接口连接上了带有专业键盘的上位机,这里设计的专业键盘就显得华而不实,因此我用了几个简单的按键将它们拼成了一个简易的键盘。为提高CPU的效率,键盘采用中断方式。按键对单片机的接口电路图如图2-20所示。图2-20按键对单片机的接口电路图2.6输出驱动接口电路将继电器接到单片机AT89S52的P2.0、P2.1口,开关输出控制加湿或者加温装置电路,单片机将采集到的温湿度数字量与预设的进行基准上下限进行运算比拟处理后,从P2.0、P2.1口输出驱动电磁继电器,对温湿度装置进行调节,以及电源通断等控制。驱动电路与单片机的连接电路如图2-21所示图2-21驱动电路与单片机的连接第3章软件程序设计单片机的程序设计有其自身的特点。在单片机系统中,硬件与软件紧密结合,由于硬件电路的设计不具有通用性,所以必须根据具体的硬件电路来设计对应的软件,硬件设计的优劣直接影响到软件设计的难易,软件设计的优劣又直接影响到硬件的发挥。在很多时候,软件可以替代硬件的功能,当然,需要付出额外占用CPU时间的代价。软件程序的设计是根据硬件电路图的连接和各个元器件的功能进行设计。在编写软件时,可以按各个程序的功能将软件细分为各个功能模块,再通过主程序的调用来实现整个软件系统。3.1主程序流程图整个软件局部的主程序包含有以下子程序:读实时DS18B20子程序模块,看门狗电路子程序,A/D转换子程序,A/D处理程序模块(PID算法)。LED显示子程序,键盘扫描子程序利用中断来实现。主流程图如图3-1所示。系统初始化系统初始化调用看门狗子程序读实时18B20调用实时温湿度与设定值比拟程序模块〔PID算法〕置相应标志位调用根据标志位输出继电器动作程序模块结束调用A/D转换子程序调用A/D处理程序图3-1主程序流程图3.2定时器中断效劳程序流程图设计在本次设计的系统中使用了两个中断效劳程序:定时器T0中断和定时器T1中断。T0中断效劳程序那么是处理键盘设定子程序。T1中断效劳程序实现的功能是动态显示时点亮LED数码管。T0中断效劳子程序在T0中断程序中,调用键盘扫描子程序,如有按键按下,就进入键值处理子程序,执行完毕后就重装T0计数初值,然后中断返回。键盘所用开关通常为机械性开关,利用了机械触点的闭合和断开来描述不同的工作状态,由于机械触点的弹性作用,一个按键开关在闭合及断开的瞬间均伴随有一连串的抖动,抖动时间一般为10ms~20ms。键盘的抖动会引起一次按键被误读屡次,为了确保CPU对一次按键动作只确认一次按键,必须消除抖动的影响。消除抖动的措施有硬件和软件两种方法。本设计采用软件延时的方法进行消除抖动。在第一次检测到有按键按下时,执行一段10ms左右的延时子程序,再确认该键电平是否仍保持闭合状态电平,如果保持闭合状态电平那么确认为真正有键按下,从而消除了抖动的影响。其键盘扫描流程图如图3-2所示。图3-2键盘中断流程图图3-2键盘中断流程图入栈保护有键按下?调延时20ms子程序有键闭合?转各键处理子程序恢复现场返回NNY读键值键盘扫描T1中断效劳程序设计本次设计采用的是动态显示,其原理为:首先以串行方式由DAT口向LED显示器数码端口发送第一个8位数据,这时发送位码数据到P0口,此时由于P0为低电平而其它口都为高电平,因此只有8个发光二极管工作。这样我们可以发送第二个数据,同样我们应使其对应的位码为低电平且保证其它位为高电平。依次类推对8个发光二极管和四位LED显示器进行扫描,显示器分时轮流工作。虽然每次只有一个显示器工作,但由于人的视觉暂留现象我们仍会感觉所有的显示器都在同时显示。它的优点是:硬件电路简单,占用较少的I/O口,但其传送速度较慢。保护现场重装定时器T1初值保护现场重装定时器T1初值取显示数据,查段码表得到显示段码将显示位码送R2调串行发送子程序送位码至扫描口四位显示完?YN显示缓冲区首址送R0,位码赋初值给R2恢复现场中断返回显示缓冲区R0加1,位码左移一位图3-3T1中断效劳程序流程图3.3DS18B20子程序流程图根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16~60微秒后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。DS18B20的初始化流程图如图3-3所示。DS18B20的读程序流程图如图3-4所示。DS18B20的写程序其流程如图3-5所示。温度采集程序流程图如图3.6所示。图3-418B20初始化流程图3-5DS18B20的读程序流程图开始开始拉低数据线延时数据移置为数据线上返回延时八位移完了吗?NY图3-6DS18B20的写程序其流程图开始开始复位DS18B20发出温度转换指令复位DS18B20发出读温度指令DS18B20出错DS18B20正常?延时结束YN图3-7温度采集程序流程图3.4看门狗程序流程图的设计X5045芯片提供了EEPROM存贮数据及看门狗功能。它必须通过微处理器加以控制方可实现。在前面已经详细介绍了X5045与单片机的接口电路,其功能的实现还是要靠软件来实现。X5045读/写操作时序1、读时序(l)把CS拉低以选择芯片(2)发送8位的读(READ)指令(3)送8位的字节地址(4)将所选定地址的存储器中的数据移到期SO线上2、写时序在写时序之前,必须先发出WREN指令使“写使能〞锁存器置位。具体置位“写使能〞锁存器操作为:(1)CS先被拉到低电平(2)由时钟同步送入WREN指令(3)将CS变为高电平写数据到EEPROM操作为:(l)拉低CS并保持在低电平(2)发送写指令(WRITE)(3)写数据,可以连续写多达4个字节的数据,但必须是这4个字节在同一页上。X5045读写程序流程图如图3-7所将CS拉将CS拉低允许写写入地址选择所写的位置数据写完了吗?等待状态存放器不忙将CS拉低将数据一位一位地读出开始将数据的一位写入将CS拉高选择所读数据的位置写入地址NY结束图3-8X5045读写程序的流程图3.5A/D转换子程序流程图本设计采用的TLC549是以开关电容逐次逼近原理工作的8位串行A/D转换器。单电源3V~6V供电范围,控制口线少,时序简单,转换速度快,功耗低,价格廉价,适用于低功耗的小型仪器仪表上的单路A/D采样,也可将多个器件并联使用。TLC549的硬件电路图在第2章已经给出,A/D转换子程序流程图如图3-8所示开始开始CS置高,CLK置低,移位计数器R0为0CS置低选中TLC5491.4uS后CLK置高读DOUT、CLK置低CS置高转换值存入缓冲区子程序返回R0加1,8位读完吗?YN图3-9A/D转换子程序流程图结论与展望经过三个多月的设计时间,本次毕业设计:基于单片机数字温湿度控制器的设计已经根本完成了。通过这次毕业设计,我掌握了一些实践性质的设计的根本步骤:首先,明确设计任务,并且要对市场上温湿度控制器要有初步了解,还要知道前人做了哪些工作,本设计方案的可利用程度等等。其次,要对整个设计系统做深入的方案论证、计算并且结合现有实际条件,确立自己的设计方案,进而,就是对自己确立的方案进行硬件实现,包括所用原器件选型,以及控制局部整个单片机系统的硬件选型与设计,并用Protel绘制出整个系统总体电路图。接着我们就进入到软件编程设计了,要画出各局部的大体流程图,弄清楚各个局部实现的功能,最后对整个系统进行软件编程实现。到此为止,这个系统的设计根本上已经完成了,最后就是要经过生产实践的检验,确定我们的设计是否符合实际要求,具有可利用价值。本系统采用的单片机控制,实现对室内温湿度的智能控制,单片机可完成室内的数据采集、传送预处理和控制任务。用单片机汇编语言编程,采用模块化的结构设计,提高了可靠性和可扩展性。把单片机控制理论与技术应用在监控中,能够实现智能化的控制要求。整个设计过程同时也是一个很好的学习时机,例如以前自己没有学习过运用Protel绘图,经过这次设计后自己在这方面有很大地进步;在查找资料方面,认识到:图书资料、网络资料和期刊等都很有价值,以后做设计的时候要注意查找完整的资料,不要只偏重一个方面。当然整个设计过程学到的知识和经验远远比运用Protel、学会查找多方资料多得多,这些对于自己以后的学习和工作将受益匪浅。但必须认识到的是,在设计中也存在着缺乏之处,例如单片机控制系统在可靠性方面相对于可编程控制器〔PLC〕控制系统略为欠缺,并且自己深入实践不够,所做的系统也不是很完善。但是我想通过以后的学习和努力一定会有所提高,能够做出更好的设计。所设计系统不仅适用于室内湿度环境的控制,对软件进行一定的扩展后也可用于实验室、医疗室、储藏保鲜、组织培养等生物环境和粮库等环境的控制,具有较强的通用性和适应性。致谢作者:2006年参考文献[1]安源.8位串行模数转换TLC548、TLC549的应用[J].国外电子元器件,2000,2:25–26.[2]冯国珍.基于数字温度传感器DS18B20的分布式测温系统的设计[J].吉林化工学院学报,2003,20〔3〕:46-48.[3]胡汉才主编.单片机原理及其接口技术(第2版)[M].北京:清华大学出版,2003[4]梅丽凤,王艳秋,汪毓铎,张军.单片机原理及接口技术[M].北京:清华大学出版社,北京交通大学出版社,2004.[5]何利民.MCS-51系列单片机应用系统设计系统配置与接口技术[M].北京:北京航空航天大学出版社,2001[6]李杏春,徐平,李华,赵嘉蔚编.8098单片机原理及实用接口技术[J].北京航空航天大学出版社,1996.[7]李华,孙晓民,李红青.MCS-51系列单片机实用接口技术[M].北京:北京航空航天大学出版社,1993.[8]雷升印,周元志.X5045芯片在单片机系统中应用的研究[J].武汉理工大学学报,2003,25〔3〕:28-29..[9]林凌,李刚,丁茹,李小霞.新型单片机接口器件与技术[M].西安:西安电子科技大学出版社,2005.[10]刘红玲,秦敬辉.X5043/X5045及其应用[J].彭城职业大学学报.2003,18〔2〕:18-22.[11]潘永雄.新编单片机原理与应用[M].西安:西安电子科技大学出版社,2003.[12]孙育才,王荣兴,孙化芳.,新型AT89S52系列单片机及其应用.北京:清华大学出版社,2005..[13]周慈航.单片机应用程序设计技术[M].北京:北京航空航天大学出版社,2002[14]韩志军,沈晋源,王振波.单片机应用系统设计——入门向导与设计实例接[M].北京:机械工业出版社,2005.[15]闫胜利,王朝瑞.基于DS18B20的温度控制系统设计[J].长春工程学院学报[J].2002,3〔4〕:55-59.[16]DallasSemiconductorDataBook.DallasSemiconductorCorp.2000.[17][18]TexasInstrumentsIncorporated.TLC548C,TLC548I,TLC549C,TLC549I8-BITANALOG-TO-DIGITALCONVERTERSWITHSERIALCONTROL[19]GyugyiL,OttoRA,PutmanTH.PrinciplesandApplicationsofStatic,Thristor-controlledShuntCompensators[J].IEEETrans.onPowerApparatusandSystem,1978,97(5):1935~1945.[20]D.Abowd,B.Brumitt,S.Shafer.TheEverywhereDisplaysProjector:ADevicetoCreateUbiquitousGraphicalInterfaces.LectureNotesinComputerScience.附录A总体电路图附录B外文文献及译文1、DS18B20FEATURES1.Unique1-Wireinterfacerequiresonlyoneportpinforcommunication,Requiresnoexternalcomponents2.Eachdevicehasaunique64-bitserialcodestoredinanonboardROM3.Canbepoweredfromdataline.Powersupplyrangeis3.0Vto5.5V4.Measurestemperaturesfrom-55℃to+125℃,士0.5℃accuracyfrom5.Thermometerresolutionisuser-selectablefrom9to12bits6.Convertstemperatureto12-bitdigitalwordin750ms(max.)7.Alarmsearchcommandidentifiesandaddressesdeviceswhosetemperatureisoutsideofprogrammedlimits(temperaturealarmcondition)8.Availablein8-pinSOIC,and3-binTO-92packages2、DS18B20BLOCKDIAGRAMFigure1showsablockdiagramoftheDS18B20,The64-biteROMstoresthedevice'suniqueserialcode.Thescratchpadmemorycontainsthe2-bytetemperatureegisterthatstoresthedigitaloutputfromthetemperaturesensor.Inaddition,thescratchpadprovidesaccesstothe1-byteupperandloweralarmtriggerregisters(THandTL),andthe1-byteconfigurationregister.Theconfigurationregisterallowstheusertosettheresolutionofthetemperature-to-digitalconversionto9,10,11,or12bits.TheTH,TLandconfigurationregistersarenonvolatile(EEPROM),sotheywillretaindatawhenthedeviceispowereddown.MEMORYCONTROLLOGICMEMORYCONTROLLOGIC64-BITEROM64-BITEROMAND1-WirePORTTEMPERATURESENSORDQTEMPERATURESENSORSCRATCHPADSCRATCHPADVD1ALARMHIGHTRIGGER(TH)REGISTER(EEPROM)ALARMHIGHTRIGGER(TH)REGISTER(EEPROM)VD28-BITECRCGENERATORPOWERSUPPLYSENSE8-BITECRCGENERATORPOWERSUPPLYSENSEALARM LOWTRIGGER(TL)REGISTER(EEPROM)VDDALARM LOWTRIGGER(TL)REGISTER(EEPROM)CONFIGURATIONREGISTER(EEPROM)CONFIGURATIONREGISTER(EEPROM)Figure1Figure1blockdiagramoftheDS18B203、DS18B20ROMCOMMANDS(1)SEARCHROM[0F0H]Whenasystemisinitiallypoweredup,themastermustidentifytheROMcodesofallslavedevicesonthebus,whichallowsthemastertodeterminethenumberofslavesandtheirdevicetypes.ThemasterlearnstheROMcodesthroughaprocessofeliminationthatrequiresthemastertoperformaSearchROMcycleasmanytimesasnecessarytoidentifyalloftheslave、s64-bitROMdevices.(2)READROM[33H]Thiscommandcanonlybeusedwhenthereisoneslaveonthebus.Itallowsthebusmastertoreadtheslave’s64一bitROMcodewithoutusingtheSearchROMprocedure.Ifthiscommandisusedwhenthereismorethanoneslavepresentonthebus,adatacollisionwilloccurwhenalltheslavesattempttorespondatthesametime.(3)MATCHROM[55H]ThematchROMcommandfollowedbya64一bitROMcodesequenceallowsthebusmastertoaddressaspecificDS18B20onamultidroporsingle一dropbus.OnlytheDS18B20thatexactlymatchesthe64一bitROMcodesequencewillrespondtothefunctioncommandissuedbythemaster;allotherslavesonthebuswillwaitforaresetpulse.(4)SKIPROM[0CCH]ThemastercanusethiscommandtoaddressalldevicesonthebussimultaneouslywithoutsendingoutanyROMcodeinformation.NotethattheReadScratchpadcommandcanfollowtheSkiPROMcommandonlyifthereisasingleslavedeviceonthebus.Inthiscasetimeissavedbyallowingthemastertoreadfromtheslavewithoutsendingthedevice’s64一bitROMcode.ASkiPROMcommandfollowedbyaReadScratchpadcommandwillcauseadatacollisiononthebusifthereismorethanoneslavesincemultipledeviceswillattempttotransmitdatasimultaneouslv.(5)ALARMSEARCH[0ECH]TheoperationofthiscommandisidenticaltotheoperationoftheSearchROMcommandexceptthatonlyslaveswithasetalarmflagwillrespond.ThiscommandallowsthemasterdevicetodetermineifanyDS18B20sexperiencedanalarmconditionduringthemostrecenttemperatureconversion.RefertotheOPERATION—ALARMSIGNAINGsectionforanexplanationofalarmflagoperation.(6)CONVERTT[44H]Thiscommandinitiatesasingletemperatureconversion.Followingtheconversion,theresultingthermaldataisstoredinthe2一bytetemperatureregisterinthescratchpadmemoryandtheDS18B20returnstoitslow一poweridlestate.Ifthedeviceisbeingusedinparasitepowermode,within10usafterthiscommandisissuedthemastermustenableastrongpulluponthel一WirebusforthedurationoftheconversionasdescribedinthePOWERINGTHEDS18B20section.IftheDS18B20ispoweredbyanexternalsupply,themastercanissuereadtimeslotsaftertheConvertTcommandandtheDS18B20willrespondbytransmittinga0whilethetemperatureconversionisinProgressanda1whentheconversionisdone.Inparasitepowermodethisnotificationtechniquecannotbeusedsincethebus1ispulledhighbythestrongpullupduringtheconversion·(7)WRITESCRATCHPAD[4EH]Thiscommandallowsthemastertowrite3bytesofdatatotheDS18B20’sscratchpad.ThefirstdatabyteiswrittenintotheTHregister,thesecondbyteiswrittenintotheTLregister,andthethirdbyteiswrittenintotheconfigurationregister.Datamustbetransmittedleastsignificantbitfirst.Allthreebytesmustbewrittenbeforethemasterissuesareset,orthedatamaybecorrupted.(8)READSCRATCHPAD[0BEH]Thiscommandallowsthemastertoreadthecontentsofthescratchpad.Thedatatransferstartswiththeleastsignificantbitofbyte0andcontinuesthroughthescratchpaduntilthe9byte(byte8一CRC)isread.Themastermayissuearesettoterminatereadingatanytimeifonlypartofthescratchpaddataisneeded.(9)COPYSCRATCHPAD[48H]ThiscommandcopiesthecontentsofthescratchpadTH,TLandconfigurationregisterstoEEPROM.Ifthedeviceisbeingusedinparasitepowermode,within10us(max)afterthiscommandisissuedthemastermustenableastrongpulluponthe1-Wirebusforatleastl0msasdescribedinthePOWERINGTHEDS18B20section-(10)RECALLE2[B8H]Thiscommandrecallsthealarmtriggervalues(THandTL)andconfigurationdatafromEEPROM,respectively,inthescratchpadmemory.ThemasterdevicecanissuereadtimeslotsfollowingtheRecallE2commandandtheDS18B20willindicatethestatusoft
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 仓单质押协议模板
- 产业园区照明工程安装协议样本
- 高炉施工环境保护协议
- 隔音工程清包工施工合同
- 门面商铺租赁合同范本
- 模特经纪公司化妆师聘用协议
- 环保产业用房买卖合同模板
- 厨房美缝施工合同协议书
- 生态园区草坪铺设协议
- 乳制品公司续租合同范本
- 基础模块2 Unit7 Invention and Innovation单元测试2025年中职高考英语一轮复习讲练测(高教版2023修订版·全国用)
- 2024年公文写作基础知识竞赛试题库及答案(共220题)
- 气候可行性论证技术规范第9部分 物流类园区(开发区)
- 能源行业顾问工作总结
- 智能制造关键技术
- 污水托管运维服务合同范本
- 15《小虾》(教学设计)2023-2024学年-部编版语文三年级下册
- 2024年纪检监察综合业务知识考试题库及参考答案(满分必刷)
- 电力安全教育及培训总结报告(3篇模板)
- 国际金融智慧树知到期末考试答案章节答案2024年中国石油大学(华东)
- QCT265-2023汽车零部件编号规则
评论
0/150
提交评论