# WK 18B20 온도 센서 모듈 사용하기 (배선도 & 소스코드)

 




안녕하세요
디바이스마트 에디터 미니입니다 :)

디바이스마트 신상품,
네번째 위킷 브랜드 아두이노 센서 모듈!


LM35 아날로그 선형 온도 센서 모듈
[WK-ADB-K07-06]


- 스펙 -

동작 전압 : 5V
소자 : DS18B20
감지 온도 : -50 ℃ ~ 125 ℃
크기 : 23*20mm





 - 배선 -

SIG -> 아두이노 10번 핀
VCC -> 아두이노 5V
GND -> 아두이노 GND


사용한 제품 보러가기 👇🏻

WK 아두이노 우노 호환 보드 [바로가기]
WK 18B20 온도 센서 모듈 [바로가기]
점퍼와이어 M-M 3핀 [바로가기]


#include <OneWire.h>

int DS18S20 = 2;
OneWire ds(DS18S20);

void setup() {
  Serial.begin(9600);
}

void loop() {
  float temperature = getTemp();
  Serial.println(temperature);
  delay(1000);
}


float getTemp() {
  byte data[12];
  byte addr[8];
  if ( !ds.search(addr)) {
    ds.reset_search();
    return -1000;
  }
  if ( OneWire::crc8( addr, 7) != addr[7]) {
    Serial.println("CRC is not valid!");
    return -1000;
  }
  if ( addr[0] != 0x10 && addr[0] != 0x28) {
    Serial.print("Device is not recognized");
    return -1000;
  }
  ds.reset();
  ds.select(addr);
  ds.write(0x44, 1);
  byte present = ds.reset();
  ds.select(addr);
  ds.write(0xBE);
  for (int i = 0; i < 9; i++)  {
    data[i] = ds.read();
  }
  ds.reset_search();
  byte MSB = data[1];
  byte LSB = data[0];
  float tempRead = ((MSB << 8) | LSB);
  float TemperatureSum = tempRead / 16;
  return TemperatureSum;
}


 18B20 소자는 디지털 온도 센서에요.

위 예제는 18B20 소자에서 값을 일겅와
온도를 출력해주는 예제랍니다.

18B20 온도 센서 모듈 예제는 라이브러리가 필요하니,
아래 링크를 통해 다운로드 받으세요 :)


18B20 온도 센서 모듈 라이브러리 👇🏻
https://www.devicemart.co.kr/goods/download?id=13962163&rank=3


댓글 쓰기

0 댓글