Smart Clock

Dependencies:   AlarmClock DigitalClock EthernetInterface FourDigitLED HTTPClient NTPClient SDFileSystem TrainStat WeatherInfo XML_aide mbed-rtos mbed picojson wolfSSL

Revision:
0:0689619f2486
Child:
1:1a28aaca601d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Jun 25 23:31:17 2015 +0000
@@ -0,0 +1,46 @@
+#include "mbed.h"
+
+#include "EthernetInterface.h"
+#include "NTPClient.h"
+#include "AlarmClock.h"
+
+static AlarmClock alarmclock (                          
+    /* Segment 0 - 6, Dot */    D11,D6, D3, D1, D0, D10,D4, D2 , 
+    /* Digit 1 - 4        */    D5, D7, D9, D12, 
+    /* Alarm, Hour, Min, Tone */D13, D14, D15, PTC11
+)  ;
+
+static EthernetInterface eth;
+
+void clock_main(void const *av)
+{
+    int ret ;
+    NTPClient ntp;
+    alarmclock.setLED(11, 11) ;
+    ret = eth.init(); 
+    alarmclock.setLED(22, 22) ;
+    while(1) {
+        ret = eth.connect();
+        if(ret == 0)break ;
+        Thread::wait(10);
+    }
+    alarmclock.setLED(33, 33) ;
+    if (ntp.setTime("ntp.jst.mfeed.ad.jp") == 0) {
+        alarmclock.flashLED() ;
+    } else {
+        alarmclock.setLED(0, 0) ;
+        wait(30.0) ;
+        return ;
+    }
+    alarmclock.start() ; 
+    while(1){        
+        alarmclock.poll() ;
+        Thread::wait(100);
+    } 
+}
+
+int main() {
+    #define STACK_SIZE 16000
+    Thread t(clock_main, NULL, osPriorityNormal, STACK_SIZE);
+    while(1)Thread::wait(1000);
+}