数字温度传感器ds18b20的操作方法.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的操作方法 传统的热敏电阻器系统通常采用放大、调理、a-d转换,转换后的数字信号被送到计算机处理。治疗电路复杂,可靠性低,计算机占用过多资源。DS18B20是一线制数字温度传感器,它可将温度信号直接转换成串行数字信号送给微处理器,电路简单,成本低,每一只DS18B20内部的ROM存储器都有唯一的64位系列号,在1根地址/信号线上可以挂接多个DS18B20,易于扩展,便于组网和多点测量。 1 ds18b20数据通讯以及读取温 DS18B20采用Dallas公司 的单总线数据通信方式专有技术,单根信号线既传输时钟,又可双向传输数据,占用 I/O口资源少,结构简单,成本低廉,便于总线扩展和维护。DS18B20采用3引脚TO-92 小体积封装形式,内部使用在板(ON2BOARD) 专利技术,全部传感元件及转换电路集成在形如一只三极管的集成电路内。3个管脚中,GND是地信号;DQ是数据输入/输出引脚,开漏单总线接口引脚,当被用在寄生电源下,也可以向器件提供电源;VDD是可选择的VDD引脚,当工作于寄生电源时,此引脚必须接地。DS18B20的测量温度范围为 -55~+125 ℃,在-10~+85 ℃范围内,精度为±0.5 ℃,可将程序设定9~12位的分辨率。 DS18B20的内部存储器包括1个高速暂存RAM和1个非易失性的、可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL以及结构寄存器。暂存存储器包含8个连续字节,前2个字节是测得的温度信息,第1个字节的内容是温度的低八位,第2个字节是温度的高八位。第3个和第4个字节是TH、TL的易失性拷贝,第5个字节是结构寄存器的易失性拷贝,这3个字节的内容在每一次上电复位时被刷新。第6、7、8个字节用于内部计算。第9个字节是冗余检验字节。 操作DS18B20应遵循以下顺序:初始化、ROM操作命令、暂存器操作命令。 初始化:总线上的所有操作要初始化,MCU先发复位信号,之后,DS18B20发出在线信号,并等待接受命令。 ROM操作命令:MCU收到DS18B20在线信号后,发送4个ROM操作命令中的一个,这些命令字均为8位(最低位在前):①读命令(33H)。通过该命令MCU可以读出DS18B20的ROM中8位系列产品代码、48位产品序列号和8位CRC码。读命令仅用在单个DS18B20在线情况,当多于一个时由于DS18B20为开漏输出将产生线与,从而引起数据冲突。②选择定位命令(55H)。多片DS18B20在线时,MCU发出该命令和1个64位数列,DS18B20内部ROM与主机数列一致,响应主机发送的寄存器操作命令,其他DS18B20等待复位。该命令也可以用在单片DS18B20情况。③跳过ROM序列号检测命令(CCH)。对于单片DS18B20在线系统,该命令允许MCU跳过ROM序列号检测而直接对寄存器操作,从而节省时间。对于多片DS18B20系统,该命令将引起数据冲突。④查询命令(F0H)。当系统初建时,MCU可能不知道总线上有多少设备及各自的64位序列号,用该命令可以做到这点。⑤报警查询命令(ECH)。该命令操作过程同ROM查询命令,但是,仅当上次温度测量值已置位报警标志(由于高于TH或低于TL时),DS18B20才响应该命令,如果DS18B20处于上电状态,该标志将保持有效,直至遇到下列两种情况:本次测量温度发生变化,测量值处于TH、TL之间:TH、TL改变,温度值处于新的范围之间,设置报警时要考虑到EERAM中的值。 存储器操作命令:①写入(4EH)。用此命令把数据写入寄存第二至第四字节,从第二字节(TH)开始。复位信号发出之前必须把这3个字节写完。②读出(BEH)。用此命令读出寄存器中的内容,从第一字节开始,直到读完第九字节,如果仅需要寄存器中部分内容,MCU可以在合适时刻发送复位命令结束该过程。③复制(48H)。用该命令把暂存器第二至第四字节转存到DS18B20的EERAM中,如果DS18B20是由信号线供电,主机发出此命令后,总线必须保证至少10 ms的上拉,当发出命令后,主机发出读时序来读总线,如果转存正在进行,读结果为0,转存结束为1。④开始转换(44H)。DS18B20收到该命令后立刻开始温度转换,不需要其它数据。此时DS18B20处于空闲状态,当温度转换正在进行时,MCU读总线将收到0,转换结束为1。如果DS18B20是由信号线供电,M发出此命令后必须立即提供至少相应于分辨率的温度转换时间的上拉。⑤回调(B8H)。执行该命令把EERAM中的内容回调到寄存器TH、TL和设置寄存器单元,DS18B20上电时能自动回调,因此,设备上电后TH、TL存在有效数据。该命令发出后,如果MCU跟着读总线,读到0意味着忙,1为回调结束。⑥读电源标志(B4H)。MC

文档评论(0)

xcwwwwws + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档