测温芯片DS18B20详细解读.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
测温芯片DS18B20详细解读

第一部分:DS18B20的封装和管脚定义 ? ?? ?首先,我们来认识一下DS18B20这款芯片的外观和针脚定义,DS18B20芯片的常见封装为TO-92,也就是普通直插三极管的样子,当然也可以找到以SO(DS18B20Z)和μSOP(DS18B20U)形式封装的产品,下面为DS18B20各种封装的图示及引脚图。 ? ? ?? 了解了这些该芯片的封装形式,下面就要说到各个管脚的定义了,如下表即为该芯片的管脚定义: ? ? ??上面的表中提到了一个“奇怪”的词——“寄生电源”,那我有必要说明一下了,DS18B20芯片可以工作在“寄生电源模式”下,该模式允许DS18B20工作在无外部电源状态,当总线为高电平时,寄生电源由单总线通过VDD引脚,此时DS18B20可以从总线“窃取”能量,并将“偷来”的能量储存到寄生电源储能电容(Cpp)中,当总线为低电平时释放能量供给器件工作使用。所以,当DS18B20工作在寄生电源模式时,VDD引脚必须接地。 第二部分:DS18B20的多种电路连接方式 如下面的两张图片所示,分别为外部供电模式下单只和多只DS18B20测温系统的典型电路连接图。 (1)外部供电模式下的单只DS18B20芯片的连接图 ? (2)外部供电模式下的多只DS18B20芯片的连接图 ? ? ?? ?这里需要说明的是,DS18B20芯片通过达拉斯公司的单总线协议依靠一个单线端口通讯,当全部器件经由一个三态端口或者漏极开路端口与总线连接时,控制线需要连接一个弱上拉电阻。在多只DS18B20连接时,每个DS18B20都拥有一个全球唯一的64位序列号,在这个总线系统中,微处理器依靠每个器件独有的64位片序列号辨认总线上的器件和记录总线上的器件地址,从而允许多只DS18B20同时连接在一条单线总线上,因此,可以很轻松地利用一个微处理器去控制很多分布在不同区域的DS18B20,这一特性在环境控制、探测建筑物、仪器等温度以及过程监测和控制等方面都非常有用。 ? ?? ?对于DS18B20的电路连接,除了上面所说的传统的外部电源供电时的电路连接图,DS18B20也可以工作在“寄生电源模式”,而下图则表示了DS18B20工作在“寄生电源模式”下的电路连接图。没错,这样就可以使DS18B20工作在寄生电源模式下了,不用额外的电源就可以实时采集到位于多个地点的温度信息了。 ? ? ?? ? 第三部分:DS18B20内部寄存器解析及工作原理 ? ?? ?介绍完DS18B20的封装、针脚定义和连接方式后,我们有必要了解DS18B20芯片的各个控制器、存储器的相关知识,如下图所示,为DS18B20内部主要寄存器的结果框图。 ? ? ?? ??结合图中的内部寄存器框图,我们先简单说一下DS18B20芯片的主要寄存器工作流程,而在对DS18B20工作原理进行详细说明前,有必要先上几张相关图片: (1)DS18B20内部寄存器结构图 ? (2)DS18B20主要寄存器数据格式图示 ? (3)DS18B20通讯指令图 ? 了解了这些内部结构和细节,下面说一下DS18B20芯片的工作原理。 ? ?? ?? ?DS18B20启动后将进入低功耗等待状态,当需要执行温度测量和AD转换时,总线控制器(多为单片机)发出[44H]指令完成温度测量和AD转换(其他功能指令见上面的指令表),DS18B20将产生的温度数据以两个字节的形式存储到高速暂存器的温度寄存器中,然后,DS18B20继续保持等待状态。当DS18B20芯片由外部电源供电时,总线控制器在温度转换指令之后发起“读时隙”(详见本帖的“DS18B20时隙图”),从而读出测量到的温度数据通过总线完成与单片机的数据通讯(DS18B20正在温度转换中由DQ引脚返回0,转换结束则返回1。如果DS18B20由寄生电源供电,除非在进入温度转换时总线被一个强上拉拉高,否则将不会有返回值)。另外,DS18B20在完成一次温度转换后,会将温度值与存储在TH(高温触发器)和TL(低温触发器)中各一个字节的用户自定义的报警预置值进行比较,寄存器中的S标志位(详见寄存器格式图示中的“TH和TL寄存器格式”图示)指出温度值的正负(S=0时为正,S=1时为负),如果测得的温度高于TH或者低于TL数值,报警条件成立,DS18B20内部将对一个报警标识置位,此时,总线控制器通过发出报警搜索命令[ECH]检测总线上所有的DS18B20报警标识,然后,对报警标识置位的DS18B20将响应这条搜索命令。 第四部分:针对DS18B20的单片机编程 ? ?? ?针对DS18B20的编程,可以理解为总线控制器通过相关指令操作器件或者器件中的相应寄存器,从而完成器件也总线控制器的数据通信,所以要真正搞定DS18B20

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档