SEDO subject project

Dependencies:   ds3231 mbed-rtos mbed DHT

Revision:
9:5e9c4277151d
Child:
10:f14f47225091
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/real_time_clock.cpp	Mon May 08 07:20:54 2017 +0000
@@ -0,0 +1,54 @@
+
+Ds3231 rtc(D14, D15);
+
+int setupRTC(void)
+{
+    int error = 0;
+    char temp[255];
+    int token_count = 0;
+    int time_data[7]
+    ds3231_cntl_stat_t rtc_control_status = {0,0};
+    ds3231_time_t rtc_time;
+    ds3231_calendar_t rtc_calendar;
+
+    scanf("%d", &temp);
+    char * pch;
+    pch = strtok (str,",");
+    do {
+
+        printf ("Insert DOW,DOM,M,Y,H,m,S\n");
+        while (pch != NULL) {
+            if(token_count>=7) {
+                error = 1;
+                break;
+            }
+            time_data[token_count] = atoi(pch);
+            token_count++;
+        }
+    } while(error==0);
+
+    rtc.set_cntl_stat_reg(rtc_control_status);
+    tc_calendar.day=time_data[0];
+    rtc_calendar.date=time_data[1];
+    rtc_calendar.month=time_data[2];
+    rtc_calendar.year=time_data[3];
+    rtc_time.mode=0;
+    rtc_time.hours=time_data[4];
+    rtc_time.minutes=time_data[5];
+    rtc_time.seconds=time_data[6];
+    
+    //Set the time, uses inverted logic for return value
+    if(rtc.set_time(rtc_time)) {
+        printf("\nrtc.set_time failed!!\n");
+        error = 2;
+    }
+
+    //Set the calendar, uses inverted logic for return value
+    if(rtc.set_calendar(rtc_calendar)) {
+        printf("\nrtc.set_calendar failed!!\n");
+        error = 3;
+    }
+    return error;
+
+
+}
\ No newline at end of file