Päivämäärän muuntaminen merkkijonoksi

Arduino:
Päivämäärän muuntaminen merkkijonoksi

How to:

#include <RTClib.h>
RTC_DS3231 rtc;

void setup() {
  Serial.begin(9600);
  if (!rtc.begin()) {
    Serial.println("RTC not found!");
    while (1);
  }
  if (rtc.lostPower()) {
    rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
  }
}

void loop() {
  DateTime now = rtc.now();
  char buffer[20];
  sprintf(buffer, "%02d.%02d.%04d %02d:%02d:%02d", now.day(), now.month(), now.year(), now.hour(), now.minute(), now.second());
  Serial.println(buffer);
  delay(1000);
}

Tulostus:

20.04.2023 14:10:32

Deep Dive

Päivämäärän merkkijonomuotoon muuntaminen on ollut tarpeellista tietokoneohjelmoinnin varhaisista päivistä. RTCLib on nykyaikainen kirjasto päivämäärän käsittelyyn Arduino-ympäristössä. Vaihtoehdot sisältävät strftime ja manuaalisen muodostamisen käyttäen String luokkaa. Esimerkkimme käyttää sprintf-funktiota muotoiluun, joka on tehokas, mutta vaatii tarkan bufferin koon määrittelyn.

See Also