用户工具

站点工具


ocrobot:alpha:ds18b20:main

ALPHA DS18B20

经过I2C接口转换的标准防水型DS18B20温度传感器

特点

参数

DS18B20

支持读取温度

支持读取设备唯一ID

特点

DS18B20 单线数字温度传感器,即“一线器件”,其具有独特的优点:

( 1 )采用单总线的接口方式 与微处理器连接时仅需要一条口线即可实现微处理器与 DS18B20 的双向通讯。单总线具有经济性好,抗干扰能力强,适合于恶劣环境的现场温度测量,使用方便等优点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。

( 2 )测量温度范围宽,测量精度高 DS18B20 的测量范围为 -55 ℃ ~+ 125 ℃ ; 在 -10~+ 85°C范围内,精度为 ± 0.5°C 。

( 3 )在使用中不需要任何外围元件。

( 4 )持多点组网功能 多个 DS18B20 可以并联在惟一的单线上,实现多点测温。

( 5 )供电方式灵活 DS18B20 可以通过内部寄生电路从数据线上获取电源。因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性更高。

( 6 )测量参数可配置 DS18B20 的测量分辨率可通过程序设定 9~12 位。

( 7 ) 负压特性电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。

( 8 )掉电保护功能 DS18B20 内部含有 EEPROM ,在系统掉电以后,它仍可保存分辨率及报警温度的设定值。 DS18B20 具有体积更小、适用电压更宽、更经济、可选更小的封装方式,更宽的电压适用范围,适合于构建自己的经济的测温系统,因此也就被设计者们所青睐。

参考图片

示例程序

需使用OCROBOT_APLHA_DS18B20_Module库

github:https://github.com/534659123/OCROBOT_APLHA_DS18B20_Module

例程:

#include "OCROBOT_DS18B20.h"
DS18B20 ds(0x01);
void setup() 
{
     ds.begin();
     Serial.begin(9600);
}
 
void loop() 
{
      float Temperature =  ds.readTemperature();
      Serial.println(Temperature);   //print Temperature
      byte ID[8];
      ds.readID(ID);
      for(byte num = 0;num<8;num++)
      {
        Serial.print(ID[num]);
        Serial.print(",");
        }
      Serial.println();
      delay(1000);
}

修改设备地址

本设备默认地址为1 十六进制:0x01,如需自定义I2C地址,首先准备如下程序

#include <Wire.h>
/***********/
byte I2CAddr = 10;   //需要修改的地址,请自行修改 (取值范围1-127)
/***********/
void setup() {
  Wire.begin();        // 初始化I2C接口
  Serial.begin(9600);
 
  Wire.beginTransmission(1); //设备默认地址 本设备DS18B20模块 = 1
  Wire.write(200);              // 修改地址的操作码
  Wire.write(I2CAddr);     //向I2C设备写入新地址
  Wire.endTransmission();    // stop transmitting
 
Serial.println("OK");    //串口显示OK则完成写入,拨动模块开关并重新上电即可
}
 
void loop() {
  // put your main code here, to run repeatedly:
 
}

自行修改程序中需要写入的地址,程序显示OK后,如下图拨动开关,断电后即可,如需恢复默认地址或忘记修改地址,将开关拨回即可

请注意:以上程序必须在I2C地址有效情况下才能正确写入,建议写入时保证开关在默认地址位置。

并且任何时候改变开关位置,请重新上电使其生效

拨动开关示意图

下载

数据手册:

原理图: ALPHA DS18B20 R1

ocrobot/alpha/ds18b20/main.txt · 最后更改: 2023/06/07 04:23 由 127.0.0.1