test.ino 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #include <Automaton.h>
  2. #include <OneWire.h>
  3. #include <DallasTemperature.h>
  4. #include <DS18B20Events.h>
  5. // Pin for DS18B20
  6. int one_wire_bus = 4;
  7. int mcu_flash_button = 0;
  8. Atm_button mcubtn;
  9. int led1_pin = 13;
  10. Atm_led led1;
  11. // Init Onewire and DallasTemperature
  12. OneWire oneWire(one_wire_bus);
  13. DallasTemperature dallasTemperature(&oneWire);
  14. //Init thermometer with index 0 (default)
  15. DS18B20Events thermometer(0);
  16. void setup() {
  17. Serial.begin(115200);
  18. led1.trace( Serial );
  19. mcubtn.trace( Serial );
  20. led1.begin( led1_pin ).blink( 1000 );
  21. mcubtn.begin( mcu_flash_button )
  22. .onPress( led1, led1.EVT_TOGGLE_BLINK );
  23. Serial.println("Booting...");
  24. /*
  25. pinMode(13, OUTPUT); //GPIO 13 = Pin D7
  26. DS18B20Events::setup(&dallasTemperature); // Link DS18B20Events to DallasTemperature object
  27. DS18B20Events::setInterval(1000); // Set min interval in milliseconds between 2 measurements. Default 10000 set in setup() method.
  28. thermometer.onChange = temperatureChanged;
  29. */
  30. Serial.println("Setup Done.");
  31. }
  32. void loop() {
  33. // thermometer.loop(); // Mandatory to measure temperature and fire an event if needed
  34. // Serial.println("Hello World");
  35. // digitalWrite(13, HIGH);
  36. // delay(1000);
  37. // digitalWrite(13, LOW);
  38. // delay(1000);
  39. automaton.run();
  40. }
  41. void temperatureChanged(uint8_t index, float tempC)
  42. {
  43. Serial.print(tempC);
  44. Serial.print(" new tempC at index ");
  45. Serial.println(index);
  46. }