Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. #include <DallasTemperature.h>//dołączenie bibliotek do obsługi czujnika temperatury
  2. #include <OneWire.h>
  3. OneWire oneWire(A5);//zdefiniowanie pinu dla czujnika DS18B20
  4. DallasTemperature sensors(&oneWire);//zadeklarowanie nowego obiektu sensors, komunikującego się z Arduino przezOneWire
  5.  
  6. float tempMAX = 0;//Aktualna temperatura maksymalna
  7. float tempMIN = 0;//Aktualna temperatura minimalna
  8. void setup() {
  9.   Serial.begin(9600);//uruchamianie komunikacji przez UART
  10.   sensors.begin();//Inicjalizacja czujników
  11.  
  12.   //Ustawiam pierwszy odczyt jako MAX i MIN
  13.   sensors.requestTemperatures();//pobranie temperatury z czujnika
  14.   tempMAX = sensors.getTempCByIndex(0);//zapis temperatury pobranej z czujnika 0 w stopniach Celsjusza do zmiennej
  15.   tempMIN = sensors.getTempCByIndex(0);//zapis temperatury pobranej z czujnika 0 w stopniach Celsjusza do zmiennej
  16. }
  17. void loop() {
  18.   sensors.requestTemperatures();//pobranie temperatury z czujnika
  19.   float temperatura = sensors.getTempCByIndex(0);//zapis temperatury do zmiennej
  20.  
  21.   if(temperatura > tempMAX) {//Jeśli aktualna temperatura jest większa od maksymalnej
  22.     tempMAX = temperatura;//to ustaw aktualną jako maksymalną
  23.  
  24.     Serial.print("-- Nowa wartosc max: ");
  25.     Serial.print(tempMAX);//Wysyłanie przez UART temperatury maksymalnej
  26.     Serial.println("*C");
  27.   }
  28.  
  29.   if(temperatura < tempMIN) {//Jeśli aktualna temperatura jest mniejsza od minimalnej
  30.     tempMIN = temperatura;//to ustaw aktualną jako minimalną
  31.  
  32.     Serial.print("-- Nowa wartosc min: ");
  33.     Serial.print(tempMIN);//Wysyłanie przez UART temperatury minimalnej
  34.     Serial.println("*C");
  35.   }
  36.  
  37.   Serial.print("Aktualna temperatura: ");
  38.   Serial.println(sensors.getTempCByIndex(0));//Wyświetlenie informacji
  39.   delay(5000);
  40. }