#include "onePulsePin.h"  // The non-blocking one shot pulse out class.
#include <mechButton.h>   // Button debouncing library.

#define PULSE_PIN 2                   // The thing will be run on pin #2
#define THING_PIN 3                   // The button for the thing will be on pin #3

onePulsePin thing(PULSE_PIN);         // Create the thing object. (The pin that pulses)  
mechButton  thingButton(THING_PIN);   // Create the button object. (The button you push.)  

void setup() {

  thingButton.setCallback(doThing); // Tell button to to call this function when changed.
  digitalWrite(PULSE_PIN,LOW);
}


// When there's a change on the button, this function will be called.
void doThing(void) {

  if (!thingButton.trueFalse()) { // If the button has been grounded..
    thing.pulse(1000,HIGH);       // Do a HIGH pulse to the thing for this amount of ms.
  }
}



void loop() {
  
  idle();      // idle() lets all the magic happen behind the scenes.
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
led1:A
led1:C
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r