Demo program for the Oled display
Diff: main.cpp
- Revision:
- 3:1fb597da3fdf
- Parent:
- 2:1eac3ea8c6e8
diff -r 1eac3ea8c6e8 -r 1fb597da3fdf main.cpp --- a/main.cpp Fri Jan 09 18:21:01 2015 +0000 +++ b/main.cpp Mon Jan 12 21:10:53 2015 +0000 @@ -23,7 +23,7 @@ char statusText[6][20] = {"Waiting Synchronise"," Wait for 21st bit ","Reading Signal data"," Checking Parity "," Last Minute Okay "," Signal error "}; char leapSymbol[2][10] = {" ", "Leap Year"}; -int hour,minute,second,dayofweek,dayofmonth,month,year,nextsec,DCF; +int hour,minute,second,dayofweek,dayofmonth,month,year,nextsec; int RTCsecond,RTCminute,RTChour,RTCdayofweek,RTCdayofmonth,RTCmonth,RTCyear; int xbuffer,ybuffer,IRQ; int xs,ys,xm,ym,xh,yh,x,y; @@ -82,7 +82,6 @@ oled.clear(); oled.setTextBackgroundType(TEXT_OPAQUE); oled.setFontSize(FONT12X16);oled.setFontColor(oled.toRGB(255,255,0)); - oled.setFontColor(oled.toRGB(255,255,0)); oled.drawText(2,0,(FONT12X16),"--drawText vs. printf--",oled.toRGB(255,0,255)); oled.drawText(2,22,(FONT5X7),"Use drawText as much as possible, it's nearly twice",oled.toRGB(255,255,255)); oled.drawText(2,23,(FONT5X7),"as fast as printf. Make sure the serial stream is",oled.toRGB(255,255,255)); @@ -354,9 +353,8 @@ t.tm_mday = (dayofmonth); // 1-31 t.tm_mon = (month-1); // 0-11 DCF "0" = Jan, -1 added for Mbed RCT clock format t.tm_year = ((year)+100); // year since 1900, current DCF year + 100 + 1900 = correct year - if (DCF==1) {set_time(mktime(&t)-3600);} // set RTC clock to DCF -1 hour for GMT time zone - else {set_time(mktime(&t));} // set RTC clock to local time zone - DCF=0; + set_time(mktime(&t)-3600); // set RTC clock to DCF -1 hour for GMT time zone + rtcset=1; } // **************************** DCF clock ********************************************** @@ -397,10 +395,7 @@ oled.drawLine(288,190,305,190, oled.toRGB(225, 255, 255)); oled.drawText(0,26,(FONT5X7)," 0 start min hour Dt dy mon year 60",oled.toRGB(255,0,0)); oled.setTouchArea(240,140,290,160); - start=0;sync=1;x=0;y=5;r=0;SignalStatus=0; - laststart=2; - loop=0; - //RTCset=0; + start=0;sync=1;x=0;y=5;r=0;SignalStatus=0;laststart=2;loop=0; interrupt_counter = 0;dcf_sec=0;error_count=0,display=0;signal_error=0;rtcset_times=0; hour = 0;minute = 0,second = 0,dayofweek = 6;dayofmonth = 1;month = 1;year = 0; @@ -426,7 +421,7 @@ if (interrupt_counter == 0) { if (start == 0) {dcf_sec=0;} if (dcf_sec == 0){dcf_array[58] = 0;} - if (dcf_good==1 && dcf_sec==2) {DCF=1;RTCset();} + if (dcf_good==1 && dcf_sec==2) {RTCset();} } if (interrupt_counter == 1) { @@ -655,7 +650,7 @@ void dcfIRQ(void) { - if (sync==0){ + if (sync==0){ // align Ticker with DCF 59th bit start signal every minute interrupt_counter = 0;sync=1;dcf_sec=0;error_count=0; Ticker50ms.attach(& dcfISR, .05); }