DateTime Library - Teensy - PJRC
Maybe your like
Download: DateTime.zip
The example was slightly modified with a default time, so it will run without needing a separate program to set the time. DateTime works on Teensy without modifications.
Hardware Requirements
None. The time is kept using an internal timer, which is synchronized when you call DateTime.available().Basic Usage
DateTime.sync(time)description, blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
DateTime.available()DateTime.Hour DateTime.Minute DateTime.Second DateTime.Day DateTime.DayofWeek DateTime.Month DateTime.Year
Example Program
// DateTime.pde // example sketch for the DateTime library #include #include <DateTimeStrings.h> #define TIME_MSG_LEN 11 // time sync to PC is HEADER followed by unix time_t as ten ascii digits #define TIME_HEADER 255 // Header tag for serial time sync message void setup(){ Serial.begin(19200); pinMode(13,OUTPUT); // we flash the LED each second DateTime.sync(1262304000L); // default start, Jan 1, 2010 } void loop(){ unsigned long prevtime; if( getPCtime()) { // try to get time sync from pc Serial.print("Clock synced at: "); Serial.println(DateTime.now(),DEC); } if(DateTime.available()) { // update clocks if time has been synced digitalWrite(13,LOW); // first flash the LED prevtime = DateTime.now(); while( prevtime == DateTime.now() ) // wait for the second to rollover ; DateTime.available(); //refresh the Date and time properties digitalClockDisplay( ); // update digital clock // send our time to any app at the other end of the serial port Serial.print( TIME_HEADER,BYTE); // this is the header for the current time Serial.println(DateTime.now()); digitalWrite(13,HIGH); } delay(100); } boolean getPCtime() { // if time sync available from serial port, update time and return true while(Serial.available() >= TIME_MSG_LEN ){ // time message consists of a header and ten ascii digits if( Serial.read() == TIME_HEADER ) { time_t pctime = 0; for(int i=0; i < TIME_MSG_LEN -1; i++){ char c= Serial.read(); if( c >= '0' && c <= '9'){ pctime = (10 * pctime) + (c - '0') ; // convert digits to a number } } DateTime.sync(pctime); // Sync Arduino clock to the time received on the serial port return true; // return true if time message received on the serial port } } return false; //if no message return false } void digitalClockDisplay(){ // digital clock display of current date and time Serial.print(DateTime.Hour,DEC); printDigits(DateTime.Minute); printDigits(DateTime.Second); Serial.print(" "); Serial.print(DateTimeStrings.dayStr(DateTime.DayofWeek)); Serial.print(" "); Serial.print(DateTimeStrings.monthStr(DateTime.Month)); Serial.print(" "); Serial.print(DateTime.Day, DEC); Serial.print(", "); Serial.println(DateTime.Year + 1900, DEC); } void printDigits(byte digits){ // utility function for digital clock display: prints preceding colon and leading 0 Serial.print(":"); if(digits < 10) Serial.print('0'); Serial.print(digits, DEC); }
Details
Details may be found at the official DateTime page.Tag » Arduino Datetime.h Download
-
Arduino/DateTime.h At Master - GitHub
-
DateTime - Arduino Playground
-
DateTime Library - Programming Questions - Arduino Forum
-
Latest DateTime Library. Where Is? - Arduino Forum
-
DateTime - Library - Codebender
-
Library Example: DateTime - Codebender
-
Time - Arduino Library List
-
DateTime.h
-
Sming Framework API: DateTime.h Source File - SmingHub
-
“.h: No Such File Or Directory" - 2 Easy Fixes To Arduino Error - SOLVED
-
Time-master - Arduino-IMU - GitLab - Uni Bremen
-
Getting Date And Time With ESP32 On Arduino IDE (NTP Client)
-
Clock | Download | MegunoLink
-
Wiring.h Missing In Arduino - Stack Overflow