test.ino 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #include <OneWire.h>
  2. #include <DallasTemperature.h>
  3. #include <DS18B20Events.h>
  4. // Pin for DS18B20
  5. #define ONE_WIRE_BUS 4
  6. // Init Onewire and DallasTemperature
  7. OneWire oneWire(ONE_WIRE_BUS);
  8. DallasTemperature dallasTemperature(&oneWire);
  9. //Init thermometer with index 0 (default)
  10. DS18B20Events thermometer(0);
  11. void setup() {
  12. Serial.begin(115200);
  13. delay(1000);
  14. Serial.println("Booting...");
  15. pinMode(13, OUTPUT); //GPIO 13 = Pin D7
  16. DS18B20Events::setup(&dallasTemperature); // Link DS18B20Events to DallasTemperature object
  17. DS18B20Events::setInterval(5000); // Set min interval in milliseconds between 2 measurements. Default 10000 set in setup() method.
  18. thermometer.onChange = temperatureChanged;
  19. Serial.println("Setup Done.");
  20. }
  21. void loop() {
  22. thermometer.loop(); // Mandatory to measure temperature and fire an event if needed
  23. // Serial.println("Hello World");
  24. digitalWrite(13, HIGH);
  25. delay(100);
  26. digitalWrite(13, LOW);
  27. delay(100);
  28. }
  29. void temperatureChanged(uint8_t index, float tempC)
  30. {
  31. Serial.print(tempC);
  32. Serial.print(" new tempC at index ");
  33. Serial.println(index);
  34. }