Проход по ссылкам навигацииГлавная : Статьи :

Считываем показания датчика DS18B20

Считываем показания датчика DS18B20

Чайник Рассмотрим как STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 при помощи Arduino считывать УМ на ГУ81М от VE3KF показания с Чайник цифрового датчика температуры Преобразователь температура - напряжение DS18B20. В Tesla ma7805 характеристики параметры настоящий момент Чайник м/с DS18B20 STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 фирмы Dallas является УМ на ГУ81М от VE3KF наиболее распространенным и доступным Чайник цифровым датчиком температуры.
Работает Преобразователь температура - напряжение он по шине Чайник 1-wire.
Tesla ma7805 характеристики параметры Даташит датчика: DS18B20



Датчик может Чайник запитываться Чайник двумя способами STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 - внешним питанием (3 УМ на ГУ81М от VE3KF провода) или Чайник паразитным (питание от Преобразователь температура - напряжение шины, 2 Tesla ma7805 характеристики параметры провода). Расписывать Чайник эти режимы STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 не буду, все УМ на ГУ81М от VE3KF есть в документации. Отмечу Чайник лишь то, что в Преобразователь температура - напряжение данном проекте мы Чайник будем Tesla ma7805 характеристики параметры использовать нормальное питание датчика.

Схема Чайник подключения Чайник датчика DS18B20 STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 к Arduino приведена ниже. УМ на ГУ81М от VE3KF Резистор номиналом Чайник 4.7 кОм.



Преобразователь температура - напряжение Рабочий скетч Tesla ma7805 характеристики параметры представлен ниже. Чайник Он взят STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 из интернета, я УМ на ГУ81М от VE3KF лишь закомментировал лишние строки, Чайник чтобы на serial monitor Преобразователь температура - напряжение выводилась только текущая Чайник температура.



Tesla ma7805  характеристики  параметры #include <onewire.h>
 
/*
 * Чайник получаем Чайник температуру от STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 DS18S20
 */
 
OneWire  ds(10);  УМ на ГУ81М от VE3KF // линия Чайник 1-Wire будет на Преобразователь температура - напряжение pin 10
 
Tesla ma7805  характеристики  параметры void setup(void)
Чайник {
  Serial.STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 begin(9600);
}
 
 
void УМ на ГУ81М от VE3KF loop(void)
{
  byte i;
  Чайник byte present = 0;
  Преобразователь температура - напряжение byte data[12];
  byte Чайник addr[8];
   
  Tesla ma7805  характеристики  параметры if ( !ds.search(addr)) {
      Чайник //Serial.Чайник print("No more STK4031 Источник: http://radioskot.ru/publ/unch/usilitel_moshhnosti_zvuka/6-1-0-203 addresses.\n");
      ds.reset_search();
      УМ на ГУ81М от VE3KF return;
  }
   
  Чайник /*Serial.print("R=");
  for( Преобразователь температура - напряжение i = Tesla ma7805  характеристики  параметры 0; i < 8; i++) {
    Serial.print(addr[i], HEX);
    Serial.print(" ");
  }*/
 
  if ( OneWire::crc8( addr, 7) != addr[7]) {
      Serial.print("CRC is not valid!\n");
      return;
  }
   
  if ( addr[0] != 0x10) {
      Serial.print("Device is not a DS18S20 family device.\n");
      return;
  }
 
  ds.reset();
  ds.select(addr);
  ds.write(0x44,1);         // запускаем конвертацию
   
  delay(5000);     // скорее всего достаточно 750ms
  // we might do a ds.depower() here, but the reset will take care of it.
   
  present = ds.reset();
  ds.select(addr);   
  ds.write(0xBE);         // считываем ОЗУ датчика
 
  /*Serial.print("P=");
  Serial.print(present,HEX);
  Serial.print(" ");*/
  for ( i = 0; i < 9; i++) {           // обрабатываем 9 байт
    data[i] = ds.read();
    //Serial.print(data[i], HEX);
    //Serial.print(" ");
  }
  /*Serial.print(" CRC=");
  Serial.print( OneWire::crc8( data, 8), HEX);
  Serial.println();*/
   
  // высчитываем температуру :)
  int HighByte, LowByte, TReading, Tc_100;
  LowByte = data[0];
  //Serial.print("LB= ");Serial.print(LowByte,HEX);
  HighByte = data[1];
  //Serial.print(" HB= ");Serial.print(HighByte,HEX);
  TReading = (HighByte << 8) + LowByte;
  Tc_100 = TReading/2;
  Serial.print(" T = ");Serial.print(Tc_100);
  Serial.println();
}
</onewire.h>Чайник 


Вы не можете скачивать файлы с нашего сервера библиотека OneWire и скетч в формате PDE

Чайник ="TEXT-ALIGN: right">Автор: taliban
Источник: http://cxem.net/