diff --git a/COMMITMSG b/COMMITMSG new file mode 100644 index 0000000..73fb57d --- /dev/null +++ b/COMMITMSG @@ -0,0 +1,7 @@ +fix: Add a button-controlled pause and resume example + +- examples/ButtonPauseResume/ButtonPauseResume.ino + +Fixes #4 + +Signed-off-by: Vedant Madane <6527493+VedantMadane@users.noreply.github.com> diff --git a/examples/ButtonPauseResume/ButtonPauseResume.ino b/examples/ButtonPauseResume/ButtonPauseResume.ino new file mode 100644 index 0000000..0abb618 --- /dev/null +++ b/examples/ButtonPauseResume/ButtonPauseResume.ino @@ -0,0 +1,31 @@ +/* + Button-controlled pause and resume example. + Wire a button from BUTTON_PIN to GND (INPUT_PULLUP). + Opens serial and toggles a paused flag on press. +*/ +const int BUTTON_PIN = 2; +bool paused = false; +bool lastStable = HIGH; +unsigned long lastDebounceMs = 0; + +void setup() { + pinMode(BUTTON_PIN, INPUT_PULLUP); + Serial.begin(115200); + Serial.println("Button pause/resume example"); +} + +void loop() { + int reading = digitalRead(BUTTON_PIN); + if (reading != lastStable && (millis() - lastDebounceMs) > 30) { + lastDebounceMs = millis(); + lastStable = reading; + if (reading == LOW) { + paused = !paused; + Serial.println(paused ? "PAUSED" : "RESUMED"); + } + } + if (!paused) { + // do work while running + delay(10); + } +}