Arduino Real Time Clock (DS1307) (5 / 7 steg)
Steg 5: om biblioteket
Innan kommer att visa tiden i LCD-skärmen. Jag ville diskutera om biblioteket som vi importerat. Jag utelämnade biblioteket som behöver fyrkantsvåg data sedan modulen har ingen fyrkantsvåg utgångsstiftet. Kan diskutera om olika sökord inblandade i det här biblioteket med några exempel.
Sökord:
Start klocka:
RTC.start();
Detta kan användas för att starta upp klockan och det börjar ticka från tiden när den var stoppat. Detta kommando bör användas när du först använder den modul i ordningen för att starta modulen.
Stoppa klockan:
RTC.stop();
Med denna kommer inte linje modulen kan pausas och klocka kryssa tills start-kommandot ges. Det används med kommandot start klockan för att kontrollera modulens tillstånd.
Läs klocka:
RTC.readClock();
Efter klockan är påslagen med kommandot Start. Du måste läsa data från RTC-modulen. Detta görs med funktionen readClock. Denna funktion är nödvändig innan de senare kommandona kan användas.
Lästid:
heltal för att hålla olika tidsvärden.
int timmar = 0;
int minuter = 0;
int sekunder = 0;
int datum = 0;
int månader = 0;
int år = 0;
int datum = 0;
syntax för att ange värdena till heltal
RTC.readClock(); Denna linje är viktigt för de andra kommandon ska fungera.
Kommandon för att få individuella tidsvärden.
timmar = RTC.getHours();
minuter = RTC.getMinutes();
sekunder = RTC.getSeconds();
datum = RTC.getDate();
månader = RTC.getMonth();
år = RTC.getYear();
datum = RTC.getDayofWeek();
Slutligen bara skriva ut de lagrade data (se nästa steg).
Så när readClock kallas. Sedan behöver vi lagra enskilda värden i heltal. Vi skapar heltal för att hålla värdena. Funktionen GetDayOfWekk ger den dagen det är i veckan. Med först är dag är måndag och sist söndag. Observera att denna metod är mycket ineffektiv i jämförelse med koden ovan men detta kommer att hjälpa dig att förstå att fungera för olika funktioner i biblioteket.
OBS:
extra kod för att ta reda på om dess AM eller PM När klockan är i 12-timmarstid.
förklara ett heltal och sträng.
int AP = 0;
Sträng TZ;
sedan läsa data från modulen.
AMPM = RTC.isPM();
Använd en om loop för att ta reda på om dess AM eller PM.
IF(AMPM == 1)
{
am = "PM";
}
annat
{
am = "Är";
}
Denna extra kodrad kommer att Visa huruvida dess AM eller PM i 12-timmars läge. När du ställer den på 24-timmarsläge bort denna kod.
Skriva tiden:
RTC.setHours(4);
RTC.setMinutes(35);
RTC.setSeconds(14);
RTC.setDate(9);
RTC.setMonth(6);
RTC.setYear(14);
RTC.set24h();
RTC.setAM();
RTC.setPM();
RTC.setDayofWeek(1); < br >
Så är dessa kommandon för att ställa in tiden för modulen. Som ni ser jag har ställt in tiden för 4:35:14 PM med datum som 9/6/14. Förutom dessa kommandon finns kommandot set24h som direkt ställer klockan till 24 timmars läge och uppsättning AM och PM för att ställa det till 12 timmars läge. SetDayofWeek används för att ange dagen.
Tid kommandon:
Dessa kommandon hantera inställningarna i modulen.
Kontrollerar om klockan är igång.
RTC.isStopped();
Kontrollera om det är AM eller PM beroende på utdata (anges ovan).
RTC.isPM();
Kontrollerar om klockan är i 24 timmarsvisning.
RTC.is12hour();
Växlar mellan 12 timmars- och 24-timmars läge.
RTC.switchTo24h();
Detta är kommandona inställning inne i klockan.
Jag har förklarat så mycket som jag kan om detta bibliotek. Om du hittar eventuella brister eller något jag missat kommentera om det så att det kan vara så exakt som möjligt.