Stap 7: De klok programmeren voor beginners: de tijd instellen
Ik geef toe dat het kostte me een geweldige tijd voor postuur zulks uiterlijk. Het lijkt nu simpel... Hier is een van de subroutines die ik gebruik:
subroutine voor instelling dag vooruit
int plusday() {}
RTC.setDay (data + 1);
RTC.setClock();
delay(500);
}
Het werkt als volgt: instellen van het nummer 'datums' vooruit door 1, dan de klok instellen, dan vertragen voor 1/2 een tweede alvorens het opnieuw te doen. Twee dingen op te merken: U moet het ding u instelt en stelt u de klok instellen (bijvoorbeeld hebben de verklaringen van de twee daar samen en in de juiste volgorde). Als u ze in de verkeerde volgorde, of als u weglaat de setClock(); verklaring, zal het niet werken. Ten tweede, de 1/2 seconden vertraging is er om te voorkomen dat de klok veel en veel tijd toe te voegen vanaf een korte touch van de draden.
Hier zijn de oproepen die u gebruiken kunt als u de RealTimeClockDS1307.h bibliotheek:
getHours getMinutes getSeconds getYear getMonth getDate getDay getDayOfWeek (vrij duidelijk)
setClock (moet gebruiken na elk van de volgende dingen, maar niet voor de gesprekken hierboven)
setSeconds setMinutes setHours
setAM setPM set24h switchTo24h switchTo12h
setDayOfWeek setDate setDay setMonth setYear
stop start (starten en stoppen van de klok, als u wilt dat te doen)
sqwEnable sqwDisable writeData readData (vierkant Golf uitvoer spullen die ik niet gebruik)
is12hour isPM isStopped getFormatted getFormatted2k (handig voor het gesprek met de klok via de seriële poort)
Er zijn twee manieren om in eerste instantie de klok gaan.
- Gebruik een apart programma te starten van de klok. Dat is wat ik deed - hieronder is een link voor u om te downloaden van de kleine programma mij tweedehands. U de tijd instellen in het programma en het eenmalig uit te voeren.
- Of u kunt gewoon tijdelijk een regel code toevoegen aan het hoofdprogramma aan het begin van de leegte lus. Voeg dit toe: start clock(); Voer het programma eens en het moet zeggen dat het 00:00:00 op Jan 1 2000. Vervolgens de regel uitgecommentarieerd, start het programma opnieuw en gebruik de knoppen op de achterzijde van de klok de tijd in te stellen. Dit is traag.