| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- #include <Automaton.h>
- #include <OneWire.h>
- #include <DallasTemperature.h>
- #include <DS18B20Events.h>
- // Pin for DS18B20
- int one_wire_bus = 4;
- int mcu_flash_button = 0;
- Atm_button mcubtn;
- int led1_pin = 13;
- Atm_led led1;
- // Init Onewire and DallasTemperature
- OneWire oneWire(one_wire_bus);
- DallasTemperature dallasTemperature(&oneWire);
- //Init thermometer with index 0 (default)
- DS18B20Events thermometer(0);
- void setup() {
- Serial.begin(115200);
- led1.trace( Serial );
- mcubtn.trace( Serial );
- led1.begin( led1_pin ).blink( 1000 );
- mcubtn.begin( mcu_flash_button )
- .onPress( led1, led1.EVT_TOGGLE_BLINK );
-
- Serial.println("Booting...");
- /*
- pinMode(13, OUTPUT); //GPIO 13 = Pin D7
- DS18B20Events::setup(&dallasTemperature); // Link DS18B20Events to DallasTemperature object
- DS18B20Events::setInterval(1000); // Set min interval in milliseconds between 2 measurements. Default 10000 set in setup() method.
- thermometer.onChange = temperatureChanged;
- */
- Serial.println("Setup Done.");
- }
- void loop() {
- // thermometer.loop(); // Mandatory to measure temperature and fire an event if needed
- // Serial.println("Hello World");
- // digitalWrite(13, HIGH);
- // delay(1000);
- // digitalWrite(13, LOW);
- // delay(1000);
- automaton.run();
- }
- void temperatureChanged(uint8_t index, float tempC)
- {
- Serial.print(tempC);
- Serial.print(" new tempC at index ");
- Serial.println(index);
- }
|