stopwatch

ik heb een code gemaakt voor de stopwatch. Alleen hoe zorg ik er voor dat als ik op een knopje druk dat hij aan gaat en weer op dezelfde knop druk om hem ook weer uit te krijgen.

#include <LiquidCrystal.h>
byte seconds = 0;
//int prevsecstate = 0;
byte minute = 0;
//int prevminstate = 0;
byte hours = 0;
//int prevhourstate = 0;
unsigned long previousMillis = 0;
const long oneSecond = 1000UL;

LiquidCrystal lcd(3, 2, A0, A1, A2, A3);

void setup()
{
lcd.begin(16, 2);
lcd.clear();
lcd.print(“Stopwatch”);

}
// voeg button ding toe om tijd te stoppen
void loop()
{
if (millis() - previousMillis >= oneSecond)
{
seconds++;
if(seconds > 59)
{
minute++;
seconds = 0;
}
if(minute > 59)
{
hours++;
minute = 0;
}
char currentTime[10] = “”;
snprintf(currentTime, sizeof(currentTime), “%02d:%02d:%02d”, hours, minute, seconds);

lcd.setCursor(0, 1);
lcd.print(currentTime);

//prevsecstate = seconds;
previousMillis += oneSecond;
}
}

dit is de code.

dan moet je state change gebruiken, ofwel een variabele telkens laten omgaan met if(drukknop){vlag != vlag