RTC on M0 and class design without rtc and target

Quote:

Example for training purposes only!!!

RTC/I2C data for target LPC11U24 Humer M0-Board and no data for others!!!

See RTC WIKI

RTC Class Hierarchy

RTC Example Main Program

Revision:
0:397b5462e6d7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Date.cpp	Thu Nov 15 06:55:25 2018 +0000
@@ -0,0 +1,51 @@
+#include "Date.h"
+#include "string"
+
+/*
+string Date::GetDay(uint8_t y)
+{
+    //return std::to_string(y); // C++ 11
+    char buffer[2];
+    sprintf (buffer, "%d", y);  // ToString
+    return buffer;
+}
+*/
+uint8_t Date :: GetDay()
+{
+    uint8_t s = rtc_read(DAYS);
+    return bcdToUint(s&0x3F);
+}
+uint8_t Date :: GetMonth()
+{
+    uint8_t s = rtc_read(MONTHS);
+    return bcdToUint(s&0x1F);
+}
+
+uint16_t Date :: GetYear()
+{
+    uint8_t y = rtc_read(YEARS);
+    y = bcdToUint(y&0x3F);
+    return y+2000;
+}
+
+uint8_t Date::bcdToUint(uint8_t const nybbles)
+{
+    uint8_t result;
+    result = (nybbles >> 4) * 10 + (nybbles & 0x0F);
+    return result;
+}
+
+string Date::toString(uint8_t value)
+{
+    //return std::to_string(value); // C++ version 11
+    char buffer[2];
+    sprintf (buffer, "%d", value);  // ToString()
+    return buffer;
+}    
+    
+string Date::GetDay(uint8_t y)
+{
+    day = "Date " + toString(y);
+    return day;
+}
+