基于单片机简易热水器恒温系统的设计外文翻译资料

 2022-07-14 05:07

英语原文共 22 页,剩余内容已隐藏,支付完成后下载完整资料


1 描述

DS18B20数字温度计提供9至12位摄氏温度测量,并具有带非易失性用户可编程上下触发点的报警功能。DS18B20通过1-Wire总线进行通信,根据定义,只需一条数据线(和地)即可与中央微处理器进行通信。它具有-55℃至 125℃的工作温度范围,在-10℃至 85℃的范围内精确到plusmn;0.5℃。另外,DS18B20可以直接从数据线获得电源(寄生电源),无需外部电源。

每个DS18B20具有唯一的64位串行代码,允许多个DS18B20在同一个1-Wire总线上运行。因此,使用一个微处理器很容易控制分布在大面积上的许多DS18B20。可受益于此功能的应用包括HVAC环境控制,建筑物内的温度监控系统,设备或机器,以及过程监控和控制系统。

2 特征

独特的1-Wire接口只需要一个端口引脚进行通信

每个器件都有一个存储在板载ROM中的唯一64位串行代码

多节点功能简化了分布式温度感应应用

不需要外部组件

可以从数据线供电;电源范围为3.0V至5.5V

测量温度从-55℃到 125℃(-67℉到 257℉)

从-10℃至 85℃时,精度为0.5℃

温度计分辨率是用户可从9到12位选择的

以750毫秒将温度转换为12位数字字(最大值)

用户可定义的非易失性(NV)报警设置

报警搜索命令识别并解决温度超出编程限制的设备(温度报警条件)

采用8引脚SO(150密耳),8引脚mu;SOP和3引脚TO-92封装

软件与DS1822兼容

应用包括恒温控制器,工业系统,消费品,温度计或任何热敏系统

3 概述

图1显示了DS18B20的框图,引脚说明在引脚说明表中给出。 64位ROM存储设备的唯一序列码。 便笺式存储器包含存储温度传感器数字输出的2字节温度寄存器。另外,暂存器可访问1个字节的上下限报警触发寄存器(TH和TL)和1个字节的配置寄存器。配置寄存器允许用户将温度--数字转换的分辨率设置为9,10,11或12位。TH,TL和配置寄存器是非易失性(EEPROM),所以它们将在器件断电时保留数据。

DS18B20采用Maxim独有的1-Wire总线协议,可使用一个控制信号实现总线通信。控制线需要一个弱上拉电阻,因为所有器件都通过3态或漏极开路端口(DS18B20情况下的DQ引脚)连接到总线。在这个总线系统中,微处理器(主设备)使用每个设备唯一的64位代码来识别和寻址总线上的设备。 由于每个设备都有唯一的代码,因此一条总线上可以寻址的设备数量几乎是无限的。1-Wire总线系统部分介绍了1-Wire总线协议,包括命令和“时隙”的详细说明。

DS18B20的另一个特点是无需外部电源即可工作。当总线为高电平时,电源通过DQ引脚通过1-Wire上拉电阻供电。高总线信号还为内部电容器(CPP)充电,当总线电压低时,该电容器将为器件供电。这种从1-Wire总线获取功率的方法称为“寄生功率”。作为替代,DS18B20也可以通过VDD上的外部电源供电。

4 操作--测量温度

DS18B20的核心功能是其直接数字温度传感器。温度传感器的分辨率可由用户配置为9,10,11或12位,分别对应于0.5℃,0.25℃,0.125℃和0.0625℃的增量。上电时的默认分辨率是12位。DS18B20在低功耗空闲状态下上电。要启动温度测量和A / D转换,主机必须发出Convert T [44h]命令。转换结束后,生成的热数据存储在暂存器内的2字节温度寄存器中,DS18B20返回到其空闲状态。如果DS18B20由外部电源供电,则在转换T命令后,主器件可发出“读时隙”(见1-Wire总线系统部分),而DS18B20将通过在温度转换过程中发送0来响应1时转换完成。如果DS18B20由寄生电源供电,则不能使用此通知技术,因为总线在整个温度转换过程中必须通过强上拉拉高。DS18B20的电源部分详细介绍了寄生电源的总线要求。

DS18B20输出温度数据以摄氏度标定;对于华氏应用程序,必须使用查找表或转换例程。 温度数据在温度寄存器中以16位符号扩展的二进制补码的形式存储(见图2)。 符号位(S)指示温度是正值还是负值:正数S = 0和负数S = 1。如果DS18B20配置为12位分辨率,则温度寄存器中的所有位将包含有效数据。 对于11位分辨率,位0未定义。对于10位分辨率,位1和位0未定义,对于9位分辨率,位2,1和0未定义。表1给出了数字输出数据的示例以及12位分辨率转换的相应温度读数。

5 操作--报警信号

在DS18B20执行温度转换后,将温度值与存储在1字节TH和TL寄存器中的用户定义的二进制补码报警触发值进行比较(参见图3)。符号位(S)指示该值是正值还是负值:正数S = 0和负数S = 1。 TH和TL寄存器是非易失性(EEPROM),因此它们将在器件掉电时保留数据。TH和TL可以通过暂存器的字节2和3进行访问,如存储器部分所述。

由于TH和TL是8位寄存器,TH和TL比较中只使用温度寄存器的第11位至第4位。如果测量温度低于或等于TL或高于或等于TH,则存在警报条件并在DS18B20内部设置警报标志。该标志在每次温度测量后更新;因此,如果报警条件消失,则在下一次温度转换后标志将被关闭。

主设备可以通过发出Alarm Search [ECh]命令来检查总线上所有DS18B20的报警标志状态。任何带有设置警报标志的DS18B20都会响应该命令,因此主控制器可以准确确定哪些DS18B20发生了报警情况。如果存在报警条件且TH或TL设置已更改,则应进行另一次温度转换以验证报警条件。

6 为DS18B20供电

DS18B20可以通过VDD引脚上的外部电源供电,也可以在“寄生电源”模式下工作,这使得DS18B20可以在没有本地外部电源的情况下工作。对于需要远程温度感应或空间受限的应用,寄生功率非常有用。图1显示了DS18B20的寄生电源控制电路,当总线处于高电平时,该电路通过DQ引脚从1-Wire总线“窃取”电源。 当总线处于高电平时,被盗电荷为DS18B20供电,并且一些电荷存储在寄生电容(CPP)上,以在总线电压低时提供电源。当DS18B20在寄生电源模式下使用时,VDD引脚必须接地。

在寄生供电模式下,只要满足指定的时序和电压要求(见DC电气特性和AC电气特性),1-Wire总线和CPP就可以为DS18B20提供足够的电流用于大多数操作。但是,当DS18B20执行温度转换或将数据从暂存器存储器复制到EEPROM时,工作电流可高达1.5mA。该电流可能会在弱1-Wire上拉电阻上产生不可接受的电压降,并且会比CPP提供的电流更大。为确保DS18B20具有足够的电源电流,只要发生温度转换或将数据从暂存器复制到EEPROM,就必须在1-Wire总线上提供强大的上拉电阻。这可以通过使用MOSFET将总线直接拉到导轨上来完成,如图4所示。在转换T [44h]或复制临时存储器后,1-Wire总线必须在10mu;s(最大值)内切换到强上拉电阻[48h]命令,并且在转换期间(tCONV)或数据传输(tWR = 10ms)期间总线必须通过上拉保持高电平。在启用上拉电阻的情况下,1-Wire总线上不能发生其他活动。

DS18B20也可以通过将外部电源连接到VDD引脚的常规方法供电,如图5所示。该方法的优点是不需要MOSFET上拉,1-Wire总线可以自由 在温度转换时间内携带其他流量。

由于DS18B20在这些温度下可能存在较高的泄漏电流,因此可能无法维持通信,因此不建议在温度高于 100℃时使用寄生功率。对于可能出现这种温度的应用,强烈建议DS18B20由外部电源供电。

在某些情况下,总线主机可能不知道总线上的DS18B20是由寄生供电还是由外部电源供电。主机需要此信息来确定在温度转换期间是否应使用强大的总线上拉电阻。为了获得这些信息,主设备可以发出Skip ROM [CCh]命令,然后发出读电源[B4h]命令,然后发出“读时隙”。 在读取时隙期间,由寄生供电的DS18B20将拉低总线电压,外部供电的DS18B20将使总线保持高电平。如果总线拉低,主器件知道它必须在温度转换期间为1-Wire总线提供强上拉。

7 64位激光ROM代码

每个DS18B20包含一个存储在ROM中的唯一的64位代码(见图6)。ROM代码的最低8位包含DS18B20的1-Wire家族代码:28h。接下来的48位包含一个唯一的序列号。最重要的8位包含循环冗余校验(CRC)字节,该字节从ROM代码的前56位计算得出。CRC生成部分提供了CRC位的详细说明。64位ROM代码和相关的ROM功能控制逻辑允许DS18B20作为1-Wire器件使用1-Wire总线系统部分详述的协议运行。

8 存储

DS18B20的存储器结构如图7所示。存储器由SRAM暂存器和非易失性EEPROM存储器组成,用于存储高低告警触发寄存器(TH和TL)和配置寄存器。请注意,如果不使用DS18B20报警功能,则TH和TL寄存器可用作通用存储器。所有存储器命令都在DS18B20功能命令部分详细介绍。

暂存器的字节0和字节1分别包含温度寄存器的LSB和MSB。这些字节是只读的。字节2和3提供对TH和TL寄存器的访问。字节4包含配置寄存器数据,这在配置寄存器部分有详细说明。字节5,6和7保留供设备内部使用,不能被覆盖。

暂存器的字节8是只读的,并包含暂存器字节0到7的CRC码。DS18B20使用CRC生成部分中描述的方法生成此CRC。

使用Write Scratchpad [4Eh]命令将数据写入暂存器的字节2,3和4;数据必须以字节2的最低有效位开始传输到DS18B20。为了验证数据的完整性,在写入数据后可以读取暂存器(使用Read Scratchpad [BEh]命令)。读取暂存器时,通过1-Wire总线传输数据,从字节0的最低有效位开始。要将TH,TL和配置数据从暂存器传输到EEPROM,主器件必须发出Copy Scratchpad [48h]命令。

器件断电时,EEPROM寄存器中的数据将保留;在上电时,EEPROM数据被重新加载到相应的暂存器位置。数据也可以随时使用Recall E2 [B8h]命令从EEPROM重新加载到暂存器。主机可以在Recall E2命令之后发出读取时隙,DS18B20将通过在正在进行召回时发送0以及在完成召回时发送1来指示召回状态。

9 配置寄存器

暂存器存储器的字节4包含配置寄存器,其结构如图8所示。用户可以使用该寄存器中的R0和R1位来设置DS18B20的转换分辨率,如表2所示。上电默认值这些位是R0 = 1和R1 = 1(12位分辨率)。请注意,分辨率和转换时间之间有直接的折衷。配置寄存器中的位7和位0至4保留供设备内部使用,且不能被覆盖。

10 CRC生成

CRC字节作为DS18B20的64位ROM代码的一部分提供,并位于暂存器的第9个字节中。ROM代码CRC是从ROM代码的前56位计算出来的,并包含在ROM的最高有效字节中。暂存器CRC是从存储在暂存器中的数据计算的,因此当暂存器中的数据改变时它会改变。当从DS18B20读取数据时,CRC为总线主机提供数据验证方法。为了验证数据已被正确读取,总线主控器必须从接收到的数据中重新计算CRC,然后将此值与ROM代码CRC(用于ROM读取)或到暂存器CRC(用于暂存器读取)进行比较。如果计算的CRC与读取的CRC相匹配,则数据已被无差错地接收。CRC值的比较和继续操作的决定完全由总线主控器决定。如果DS18B20 CRC(ROM或暂存器)与总线主控器产生的值不匹配,DS18B20内部就没有电路阻止命令序列的进行。

CRC(ROM或暂存器)的等效多项式函数是:

CRC = X8 X5 X4 1

总线主控器可以重新计算CRC并使用图9所示的多项式发生器将其与DS18B20的CRC值进行比较。该电路由移位寄存器和XOR门组成,移位寄存器位初始化为0。启动 ROM码的最低有效位或暂存器中的字节0的最低有效位,每次一位应该移入移位寄存器。 在从ROM中移入第56位或从暂存器中移出字节7的最高位后,多项式发生器将包含重新计算的CRC。 接下来,必须将DS18B20的8位ROM代码或暂存器CRC移入电路。此时,如果重新计算的CRC是正确的,则移位寄存器将包含全部0。有关Maxim 1-Wire循环冗余校验的更多信息,请参见应用笔记27:了解和使用Maxim iButton产品的循环冗余校验。

11 1-Wire总线系统

1-Wire总线系统使用一个总线主控器来控制一个或多个从设备。DS18B20总是一个从机。当总线上只有一个从机时,该系统被称为“单点”系统;如果总线上有多个从站,则系统为“多点”。

所有数据和命令都通过1-Wire总线首先传输最低有效位。

以下关于1-Wire总线系统的讨论分为三个主题:硬件配置,事务序列和1-Wire信令(信号类型和时序)。

12 硬件配置

1-Wire总线根据定义只有一条数据线。每个器件(主器件或从器件)通过漏极开路或3态端口连接到数据线。 这允许每个设备在设备不传输数据时“释放”数据线,以便总线可供其他设备使用。DS18B20的1-Wire端口(DQ引脚)为漏极开路,内部电路等效于图10所示的电路。

1-Wire总线需要约5kOmega;的外部上拉电阻;因此,1-Wire

全文共6648字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[9461],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。