DS18B20与LCD1602结合显示温度.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
页脚 页脚 DS18B20 一、DS18B20 的外形及其与单片机的连接图 (a) (b) 图 1 DS18B20 是Dallas 公司生产的 1-Wire 接口数字温度传感器,其外形如图 1(a)所示,有三个引脚,分别为:电源地1(GND); 数字信号输入/输出端 2(DQ);外接供电电源输入端3 (VDD,在寄生电源接线方式时接地)。它是一种单总线数字温度传感器,所有的数据交换和 控制都通过这根数据线来完成。测试温度围-55℃-125℃,温度数据位可配置为9、10、11、12 位,对应的刻度值分别为 0.5℃、0.25℃、0.125℃、0.0625℃,对应的最长转换时间分别为 93.75ms、187.5ms、375ms、750ms。出厂默认配置为 12 位数据,刻度值为 0.0625℃, 最长转换时间为 750ms。从以上数据可以看出,DS18B20 数据位越低、转换时间越短、反应越快、精度越低。 单总线没有时钟线,只有一根通信线,其读写数据是靠控制起始时间和 采样时间来完成,所以时序要求很严格。图 1(a)为 DS18B20 与单片机的连接电路图,它的数据线通常要求外接一个 4.7K ?-10K ?的上拉电阻(该电阻画原理图时靠近单片机画故没 有显示出来),故其闲置时状态位高电平。 提示:DS18B20 外形酷似三极管,分辨引脚时,面对着扁平的那一面,左负右正,一旦接反就会立刻发热,甚至有可能烧毁。 二、DS18B20 存储器结构 DS18B20 的部有 64 位的 ROM 单元,和 9 字节的暂存器单元。1、64 位(激)光刻只读存储器 每只 DS18B20 都有一个唯一存储在ROM 中的 64 位编码(跟人的号类似,一人一个号), 这是出厂时被光刻好的。最前面 8 位是单线系列编码:28h。接着的 48 位是一个唯一的序列号。最后 8 位是以上 56 位的 CRC 编码。64-位的光刻 ROM 又包括 5 个 ROM 的功能命令:读ROM,匹配ROM,跳跃ROM,查找ROM 和报警查找。ROM 的作用是使每个DS18B20 各不相同, 这样就可以实现一根总线上挂接多个DS18B20 以实现多点监测。 2、9 字节的暂存器单元 表 1 DS18B20 的暂存器单元如表 1 所示,各部分介绍如下。1)、温度传感器 图 2 暂存器的第 0(LSB)字节,第 1(MSB)字节为DS18B20 的温度传感器,它们负责保存对温度的测量结果,用 16 位二进制提供,格式如图 2 所示。DS18B20 读取温度时共读取 16 位, 前 5 个位(MSB 的高 5 位)为符号位,当前 5 位为 1 时,读取的温度为负数;当前 5 位为 0 时, 读取的温度为正。温度为正时读取方法为:将 16 进制数转换成 10 进制即可。温度为负时读取方法为(实际就是取补码):将 16 进制取反后加 1,再转换成 10 进制。例:0550H = +85 度, FC90H = -55 度,0191H 为 25.0625 度。LSB 的低四位用于表示测量值中小数点后的数值。2)、非挥发的温度报警触发器 TH 和TL 位于第 2 和第 3 字节,用于写入温度报警值,实际上就是设定温度的最高和最低界限。3)、配置寄存器 配置寄存器位于存储器的第 4 字节,其组织如图 3 所示。配置寄存器的 0~4 位和 7 位被器件保留,禁止写入;在读回数据时全部为逻辑1。R1 和 R0 用于设置DS18B20 的精度,具体如表 2 所示。 图 3 表 2 4)、CRC 发生器 CRC 字节作为DS18B2064 位 ROM 的一部分存储在存储器中。CRC 码由ROM 的前 56 位计算得到,被包含在ROM 的重要字节当中。CRC 由存储在存储器中的数据计算得到,因此当存储器中的数据发生改变时,CRC 的值也随之改变。 CRC 能够在总线控制器读取DS18B20 时进行数据校验。为校验数据是否被正确读取,总线控制器必须用接受到的数据计算出一个CRC 值,和存储在 DS18B20 的 64 位ROM 中的值(读ROM 时)或DS18B20 部计算出的 8 位 CRC 值(读存储器时)进行比较。如果计算得到的CRC 值和读取出来的CRC 值相吻合,数据被无错传输。CRC 值的比较以及是否进行下一步操作完全由总线控制器决定。当在 DS18B20 中存储的或由其计算到CRC 值和总线控制器计算的值不相符时,DS18B20 部并没有一个能阻止命令序列进行的电路。 CRC 的计算等式如下: CRC = X8 + X5 + X4 + 1 单总线CRC 可以由一个由移位寄存器和XOR 门构成的多项式发生器来产生。这个回路包括一个移位寄存器和几个XOR 门,移位寄存器的各位都被初始化为0。从

文档评论(0)

hao187 + 关注
官方认证
文档贡献者

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

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档