Skip to content

adjust()

Arnd edited this page Dec 12, 2020 · 3 revisions

This function is used to set the RTC date and time. When called with no parameters the last compile date and time of the library header file is used to set the RTC. Otherwise it needs to be called using a DateTime class instance in order to set the clock.


Example:

...
DS3231M_Class DS3231M; // Create an instance of the DS3231M
...
void setup() {
  Serial.begin(SERIAL_SPEED);
  while (!DS3231M.begin()) { // Initialize RTC communications
    Serial.println("Unable to find MCP7940. Checking again in 1 second.");
    delay(1000);
  } // of loop until device is located
  DS3231M.adjust(); // Set the RTC to the Date/Time of library compile
  DateTime now = DS3231M.now(); // get the date and time
  Serial.print("Year:   ");Serial.println(now.year());
  Serial.print("Month:  ");Serial.println(now.month());
  Serial.print("Day:    ");Serial.println(now.day());
  Serial.print("Hour:   ");Serial.println(now.hour());
  Serial.print("Minute: ");Serial.println(now.minute());
  Serial.print("Second: ");Serial.println(now.second());
  DS3231M.adjust(DateTime(2017,8,5,18,19,20));; // Set the RTC to "2017-08-05 18:19:20"
  Serial.print("Year:   ");Serial.println(now.year());
  Serial.print("Month:  ");Serial.println(now.month());
  Serial.print("Day:    ");Serial.println(now.day());
  Serial.print("Hour:   ");Serial.println(now.hour());
  Serial.print("Minute: ");Serial.println(now.minute());
  Serial.print("Second: ");Serial.println(now.second());
...
} // of setup
Clone this wiki locally