CanSat-India-Updated / Timestamp_systemClock
Timestamp_systemClock
Raw
#include <TimeLib.h>

void setup(){
Serial.begin(9600);
}

void Timestamp() {
  if (Serial.available()) {
    time_t t = processSyncMessage();
    if (t != 0) {
      Teensy3Clock.set(t); 
      setTime(t);
    }
  }
  digitalClockDisplay();  
}

void digitalClockDisplay() {
  Serial.print(hour());
  printDigits(minute());
  printDigits(second());
  Serial.println(); 
}

time_t getTeensy3Time()
{
  return Teensy3Clock.get();
}

#define TIME_HEADER  "T"   
unsigned long processSyncMessage() {
  unsigned long pctime = 0L;
  const unsigned long DEFAULT_TIME = 1357041600; 

  if(Serial.find(TIME_HEADER)) {
     pctime = Serial.parseInt();
     return pctime;
     if( pctime < DEFAULT_TIME) { 
       pctime = 0L; 
     }
  }
  return pctime;
}

void printDigits(int digits){
  Serial.print(":");
  if(digits < 10)
    Serial.print('0');
  Serial.print(digits);
}