mirror of
https://github.com/RobTillaart/Arduino.git
synced 2024-10-03 18:09:02 -04:00
66 lines
1.3 KiB
C++
66 lines
1.3 KiB
C++
//
|
|
// FILE: stopwatch_demo.ino
|
|
// AUTHOR: Rob Tillaart
|
|
// PURPOSE: sample demo stopwatch class
|
|
// DATE: 2022-09-08
|
|
// URL: https://github.com/RobTillaart/StopWatch_RT
|
|
|
|
|
|
#include <StopWatch.h>
|
|
|
|
StopWatch myStopwatch;
|
|
|
|
// configure to your needs
|
|
#define RUNPIN 13
|
|
#define STARTPIN 7
|
|
#define STOPPIN 6
|
|
#define RESETPIN 5
|
|
|
|
uint32_t lastDisplay = 0;
|
|
uint32_t lastTimeDisplayed = -1;
|
|
|
|
void setup()
|
|
{
|
|
Serial.begin(115200);
|
|
Serial.println();
|
|
Serial.println(__FILE__);
|
|
Serial.print("STOPWATCH_LIB_VERSION: ");
|
|
Serial.println(STOPWATCH_LIB_VERSION);
|
|
|
|
pinMode(RUNPIN, OUTPUT); // indicator stopwatch is running
|
|
digitalWrite(RUNPIN, LOW);
|
|
pinMode(STARTPIN, INPUT_PULLUP);
|
|
pinMode(STOPPIN, INPUT_PULLUP);
|
|
pinMode(RESETPIN, INPUT_PULLUP);
|
|
}
|
|
|
|
|
|
void loop()
|
|
{
|
|
// HANDLE IO PINS
|
|
if (digitalRead(STARTPIN) == LOW) myStopwatch.start();
|
|
if (digitalRead(STOPPIN) == LOW) myStopwatch.stop();
|
|
if (digitalRead(RESETPIN) == LOW) myStopwatch.reset();
|
|
|
|
// HANDLE RUNNINGLED
|
|
digitalWrite(RUNPIN, myStopwatch.isRunning());
|
|
|
|
// HANDLE DISPLAY
|
|
if (millis() - lastDisplay > 100)
|
|
{
|
|
lastDisplay = millis();
|
|
uint32_t ti = myStopwatch.elapsed();
|
|
if (ti != lastTimeDisplayed)
|
|
{
|
|
lastTimeDisplayed = ti;
|
|
Serial.print("TIME: ");
|
|
Serial.println(ti);
|
|
}
|
|
}
|
|
|
|
// do other stuff here
|
|
}
|
|
|
|
|
|
// -- END OF FILE --
|