Stap 6: Software - instellen van de klok
1 - het instellen van de klok
Dit programma stelt gewoon de tijd op de RTC-chip met die van uw programmering PC.
U zult moeten installeren van de DS1307RTC-bibliotheek in de arduino IDE,
Kopiëren en plakken in de Arduino IDE, uploaden, compileren en uitvoeren.
De seriële monitor in de Arduino IDE roepen en u zult zien dat het bevestigen van de tijd die het heeft ingesteld op de RTC-chip.
Gedaan! -je nooit echt nodig om dit opnieuw te gebruiken.
Tip: zet uw PC-klok ongeveer 3 minuten snel wanneer u dit doet. Deze manier de EAS klok altijd ongeveer 3 minuten snel, en tegen de tijd dat het heeft stopt met het tekenen van de tijd in de EAS, op zal zitten juiste! dat wil zeggen tegen de tijd dat het aan de tweede minuut cijfer krijgt, zullen het bijna drie minuten nadat het begon - dus het zal recht :-)
#include
#include
#include
tmElements_t tm; VOID Setup {}
BOOL parse = false;
BOOL config = false;
krijgen van de datum en tijd die de compiler is uitgevoerd
Als (getTime(__TIME__)) {}
parse = true;
en de RTC configureren met deze info
Als (RTC.write(tm)) {}
config = true;
}
}
Serial.begin(9600);
terwijl (!. Serieel); wachten op seriële Monitor van de Arduino
delay(200);
Als (parse & & config) {}
Serial.Print ("DS1307 geconfigureerd tijd =");
Serial.Print(__TIME__);
} else if (parse) {}
Serial.println ("DS1307 communicatiefout:-{");
Serial.println ("Controleer uw circuit");
} else {}
Serial.Print ("kon niet ontleden info van de compiler, tijd = \" ");
Serial.Print(__TIME__);
Serial.println("\"");
}
}
void loop {}
}
BOOL getTime (const char * str)
{
int uur, Min, Sec;
Als (sscanf (str, "% d: % d: %d", uur, Min, & Sec)! = 3) return false;
TM. Uur = uur;
TM. Minute = Min;
TM. Tweede = Sec;
return true;
}