Wat opmerking betreffende het programma in antwoord #19.
Je moet in loop() niet constant de tijd en alarm tijd tonen. Doe dat alleen als er een verandering is, dus als de tijd verandert of als je de alarmtijd aan het instellen bent..
Om de instelling van je alarm tijd te zien tijdens het instellen moet je eerst het alarm aanzettent.
Je "eenvoudige debounce" is eigenlijk een detectie van de verandering van de staat van een knop; gebruik een daadwerkelijke delay() in je "eenvoudige debounce". Iets zoals while (digitalRead(btnIncreaseTime) == LOW) delay(10); // Eenvoudige debounce. Ik heb redelijk goede knoppen op dit moment en 10 milleseconden is (ruim) voldoende; het hangt van de kwaliteit van je knoppen af of je het moet aanpassen.
Gebruik seriele monitor voor debuggen (Serial.begin() toevoegen aan setup() en Serial.println() op belangrijke plaatsen.
Je programma werkt min-of-meer.
Verder advies indien nodig nadat je post #19 van code tags hebt voorzien.
Een code schrijven is best een precisie werkje.
De code moet begrepen worden door de compiler zodat die er een voor de controller begrijpbare code van kan maken (compileren dus).
De kunst daarbij is dat je zelf ook goed kunt lezen en begrijpen wat er staat.
Dat geldt ook voor de antwoorden die je hier krijgt op je vragen.
Schijnbaar is dat moeilijk, want je lijkt niets te doen met de verzoeken inclusief uitleg waarom die verzoeken komen (er is al 3 keer uitgelegd hoe je de code kunt plaatsen).
Ik weet niet waar dat vandaan komt, kan verschillende zaken zijn.
Maar ik vermoed dat je te gehaast bezig bent.
Lees daarom de adviezen goed door en begin pas aan een antwoord als je het gehele bericht begrepen hebt.
Neem daar dus de tijd voor, want op den duur bespaar je daar jouw tijd mee.
Maar vooral stel je zo het geduld van de mensen die je proberen te helpen niet meer zo op de proef.
Ik weet niet hoe je hier op het forum zit (PC, laptop, telefoon of tablet bijvoorbeeld).
Zelf zit ik hier met met een PC of laptop op het forum.
Het kan zijn dat jouw apparaat anders werkt dan het apparaat waarvoor je de adviezen krijgt, ik weet dat niet omdat ik alleen met de genoemde apparaten werk.
Je ziet een stukje naar boven een code die sterretje heeft geplaatst.
Jouw code ziet er heel anders en ook niet consistent uit, omdat je deze niet op de gevraagde wijze hebt geplaatst.
Daardoor ontstaan er fouten in die code (er vallen bijvoorbeeld belangrijke delen weg), en die moeten dan gecorrigeerd worden door degenen die je willen helpen voordat ze je kunnen helpen.
Dus neem de tijd om uit te vinden hoe dat werkt, en neem ook de tijd om je berichten te schrijven.
Lees je bericht terug voor je 'm plaatst, zodat je fouten die er ingeslopen zijn nog kunt oplossen.
Wees ook duidelijk tijdens het stellen van je vragen.
"Ik ben al een hele tijd bezig, maar niets werkt" daar spreekt jouw frustratie (en dat is begrijpelijk), maar er staat geen bruikbare informatie in.
En eigenlijk geldt dit ook voor jouw code.
Ga er van uit dat je deze code later nog een keer gaat bekijken.
Weet je een half jaar nadat je deze code hebt afgerond nog hoe je 'm hebt gebouwd en wat er waar gebeurt in die code ?
Waarschijnlijk niet.
Dus zet er commentaar bij zodat dat duidelijk wordt.
Commentaar regels hebben wel alleen nut als het commentaar dat er in staat, ook klopt met de code.
De een zet er commentaar bij dat beschrijft wat 'ie wil, de ander zet er commentaar bij dat werkelijk beschrijft wat er gebeurt.
Dat hoeft niet altijd hetzelfde te zijn, en (te veel) commentaar kan het lezen van de code ook minder overzichtelijk maken.
Je hoeft het commentaar niet in het Engels erbij te zetten, want het is vooral voor jouw eigen gebruik bedoeld (en misschien voor hier in het Nederlandstalige deel van het forum).
Lees dit bericht dus nog eens een keer door, en denk daarbij niet dat ik loop te zeuren.
Want dat doe ik niet en het zou niets meer zijn dan het verspillen van mijn kostbare tijd en moeite.