DCF77 digital clock giveson graphic Nokia 6610 display: @summer or wintertime hour,minute,seconds Day of week Day Month Year

Dependencies:   mbed NokiaLCD

Committer:
flowcode
Date:
Tue Dec 20 12:14:26 2011 +0000
Revision:
0:0d02d25adbcd
dcf clock with graphic 130x130 nokia 6610 display on brealout board Olimex

Who changed what in which revision?

UserRevisionLine numberNew contents of line
flowcode 0:0d02d25adbcd 1 /*DCF77 Digitale Clock V1.0 by hans.oostwal@kpnmail.nl
flowcode 0:0d02d25adbcd 2
flowcode 0:0d02d25adbcd 3 PARTS:
flowcode 0:0d02d25adbcd 4 Conrad DCF77 receiver.
flowcode 0:0d02d25adbcd 5 Nokia 6610 graphic 130x130 display on breakout board Olimex.
flowcode 0:0d02d25adbcd 6 Mbed NXP LCP768.
flowcode 0:0d02d25adbcd 7 Resisor 2K2 1/4W.
flowcode 0:0d02d25adbcd 8 -------------------------------------
flowcode 0:0d02d25adbcd 9 CONNECTIONS:
flowcode 0:0d02d25adbcd 10 DCF77 Receiver:
flowcode 0:0d02d25adbcd 11 pin_1=GND.
flowcode 0:0d02d25adbcd 12 pin_2=+5V use the not inverted output.
flowcode 0:0d02d25adbcd 13 pin_3=non inverted open collector output via pullup resistor 2K2 to pin DigitalInput pin_21 Mbed.
flowcode 0:0d02d25adbcd 14 pin_4=inverted output not used.
flowcode 0:0d02d25adbcd 15 -------------------------------------
flowcode 0:0d02d25adbcd 16 CONNECTIONS:
flowcode 0:0d02d25adbcd 17 LCD Nokia 6610 Display 130x130 Olimex compatiple:
flowcode 0:0d02d25adbcd 18 PIN_5 mosi
flowcode 0:0d02d25adbcd 19 PIN_7 sclk
flowcode 0:0d02d25adbcd 20 PIN_8 cs
flowcode 0:0d02d25adbcd 21 PIN_9 rst
flowcode 0:0d02d25adbcd 22 */
flowcode 0:0d02d25adbcd 23
flowcode 0:0d02d25adbcd 24
flowcode 0:0d02d25adbcd 25
flowcode 0:0d02d25adbcd 26 #include "mbed.h"
flowcode 0:0d02d25adbcd 27 #include "NokiaLCD.h"
flowcode 0:0d02d25adbcd 28
flowcode 0:0d02d25adbcd 29 //harware_conections
flowcode 0:0d02d25adbcd 30 DigitalOut testu (LED4);//pariteit error hour
flowcode 0:0d02d25adbcd 31 DigitalOut testm (LED4);//pariteit error minute
flowcode 0:0d02d25adbcd 32 DigitalOut testdmy (LED4);//pariteit error day/month/year
flowcode 0:0d02d25adbcd 33
flowcode 0:0d02d25adbcd 34
flowcode 0:0d02d25adbcd 35 DigitalOut err_led(LED3);//syncronize error
flowcode 0:0d02d25adbcd 36 DigitalOut sign_bit_1(LED1);//received DCF bit=1
flowcode 0:0d02d25adbcd 37 DigitalOut sign_bit_0(LED2);//received DCF bit=0
flowcode 0:0d02d25adbcd 38
flowcode 0:0d02d25adbcd 39
flowcode 0:0d02d25adbcd 40 DigitalIn dcf_in(p21);//conection of output(Conrad)NON inverting dcf module, (opencollecter use pullup resistor of 2K2).
flowcode 0:0d02d25adbcd 41 Serial pc(USBTX,USBRX);//usb serial connection
flowcode 0:0d02d25adbcd 42
flowcode 0:0d02d25adbcd 43 //connectons LCD Nokia Graphic Olimex display
flowcode 0:0d02d25adbcd 44
flowcode 0:0d02d25adbcd 45
flowcode 0:0d02d25adbcd 46 NokiaLCD lcd(p5, p7, p8, p9, NokiaLCD::LCD6610); // mosi, sclk, cs, rst,: type
flowcode 0:0d02d25adbcd 47
flowcode 0:0d02d25adbcd 48
flowcode 0:0d02d25adbcd 49
flowcode 0:0d02d25adbcd 50 //variabele
flowcode 0:0d02d25adbcd 51 char parall, paritym,parityu,paritydmy;
flowcode 0:0d02d25adbcd 52 char bit;
flowcode 0:0d02d25adbcd 53 char sec,lcd_sec,a_sec;
flowcode 0:0d02d25adbcd 54 char teller;
flowcode 0:0d02d25adbcd 55 char min,minh,minl;
flowcode 0:0d02d25adbcd 56 char loop_i;
flowcode 0:0d02d25adbcd 57 char uurh,uurl,uur;
flowcode 0:0d02d25adbcd 58 char w_dag;
flowcode 0:0d02d25adbcd 59 char dag,dagh,dagl;
flowcode 0:0d02d25adbcd 60 char maand,maandh,maandl;
flowcode 0:0d02d25adbcd 61 char jaar,jaarh,jaarl;
flowcode 0:0d02d25adbcd 62 char wait_sync;
flowcode 0:0d02d25adbcd 63 char wait_balk;
flowcode 0:0d02d25adbcd 64 char summertime;
flowcode 0:0d02d25adbcd 65
flowcode 0:0d02d25adbcd 66
flowcode 0:0d02d25adbcd 67 int dcf_array[61];
flowcode 0:0d02d25adbcd 68
flowcode 0:0d02d25adbcd 69 //makro,s
flowcode 0:0d02d25adbcd 70 void sync ();
flowcode 0:0d02d25adbcd 71 void getbit ();
flowcode 0:0d02d25adbcd 72 void lcd_txt ();
flowcode 0:0d02d25adbcd 73 void name_weekdag();
flowcode 0:0d02d25adbcd 74 void name_month();
flowcode 0:0d02d25adbcd 75
flowcode 0:0d02d25adbcd 76
flowcode 0:0d02d25adbcd 77 //START MAIN
flowcode 0:0d02d25adbcd 78 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
flowcode 0:0d02d25adbcd 79 int main() { //start main_ program
flowcode 0:0d02d25adbcd 80
flowcode 0:0d02d25adbcd 81 wait_sync=120;
flowcode 0:0d02d25adbcd 82
flowcode 0:0d02d25adbcd 83 //welcome text
flowcode 0:0d02d25adbcd 84
flowcode 0:0d02d25adbcd 85 lcd.locate (1,3);
flowcode 0:0d02d25adbcd 86 lcd.printf("Start DCF V1.0");
flowcode 0:0d02d25adbcd 87 lcd.locate(0,5);
flowcode 0:0d02d25adbcd 88 lcd.printf("hans.oostwal @kpnmail.nl");
flowcode 0:0d02d25adbcd 89 wait (5);
flowcode 0:0d02d25adbcd 90 lcd.cls();
flowcode 0:0d02d25adbcd 91
flowcode 0:0d02d25adbcd 92 while (1) { //1e_loop
flowcode 0:0d02d25adbcd 93
flowcode 0:0d02d25adbcd 94 //wait for dcf signal
flowcode 0:0d02d25adbcd 95 lcd.locate (0,3);
flowcode 0:0d02d25adbcd 96 lcd.printf("wait for 59e bit");
flowcode 0:0d02d25adbcd 97 lcd.locate(0,1);
flowcode 0:0d02d25adbcd 98 lcd.printf("DCF start signal");
flowcode 0:0d02d25adbcd 99
flowcode 0:0d02d25adbcd 100 parall=0;
flowcode 0:0d02d25adbcd 101 sec=0;
flowcode 0:0d02d25adbcd 102 err_led=1;
flowcode 0:0d02d25adbcd 103 dcf_array[58] = 0;
flowcode 0:0d02d25adbcd 104 loop_i = 0;
flowcode 0:0d02d25adbcd 105 sign_bit_0 = 0;
flowcode 0:0d02d25adbcd 106 sign_bit_1 = 0;
flowcode 0:0d02d25adbcd 107
flowcode 0:0d02d25adbcd 108 while (1) { //2e_loop
flowcode 0:0d02d25adbcd 109
flowcode 0:0d02d25adbcd 110 sync ();
flowcode 0:0d02d25adbcd 111 err_led=0;
flowcode 0:0d02d25adbcd 112
flowcode 0:0d02d25adbcd 113 while (1) { //3e_loop
flowcode 0:0d02d25adbcd 114
flowcode 0:0d02d25adbcd 115 teller=0;
flowcode 0:0d02d25adbcd 116
flowcode 0:0d02d25adbcd 117 teller++;
flowcode 0:0d02d25adbcd 118
flowcode 0:0d02d25adbcd 119 while (teller<59) {
flowcode 0:0d02d25adbcd 120 getbit();//JUMP TO MAKRO GETBIT
flowcode 0:0d02d25adbcd 121 lcd_txt();//JUMP TO MAKRO LCD_TXT
flowcode 0:0d02d25adbcd 122 teller++;
flowcode 0:0d02d25adbcd 123 }
flowcode 0:0d02d25adbcd 124
flowcode 0:0d02d25adbcd 125 sec=58;
flowcode 0:0d02d25adbcd 126 sync ();
flowcode 0:0d02d25adbcd 127 sec=59;
flowcode 0:0d02d25adbcd 128 lcd_txt ();//JUMP TO MAKRO lcd_txt
flowcode 0:0d02d25adbcd 129 getbit ();
flowcode 0:0d02d25adbcd 130
flowcode 0:0d02d25adbcd 131 //calculate summer/winter time----------------------------------------------------------------------
flowcode 0:0d02d25adbcd 132 summertime = dcf_array[17] & 1;
flowcode 0:0d02d25adbcd 133
flowcode 0:0d02d25adbcd 134
flowcode 0:0d02d25adbcd 135 //----------------------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 136
flowcode 0:0d02d25adbcd 137
flowcode 0:0d02d25adbcd 138 //calculate uur--------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 139 uurh = dcf_array[34] * 20 + dcf_array[33] * 10;
flowcode 0:0d02d25adbcd 140 uurl = dcf_array[32] * 8 + dcf_array[31] * 4 + dcf_array[30] * 2 + dcf_array[29] * 1;
flowcode 0:0d02d25adbcd 141 uur = uurh + uurl;
flowcode 0:0d02d25adbcd 142 //----------------------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 143
flowcode 0:0d02d25adbcd 144 //calculate minutes------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 145 minl = dcf_array[24] * 8 + dcf_array[23] * 4 + dcf_array[22] * 2 + dcf_array[21] * 1;
flowcode 0:0d02d25adbcd 146 minh = dcf_array[27] * 40 + dcf_array[26] * 20 +dcf_array[25] * 10;
flowcode 0:0d02d25adbcd 147 min = minh + minl;
flowcode 0:0d02d25adbcd 148 //-----------------------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 149
flowcode 0:0d02d25adbcd 150 //calculate day of week--------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 151 w_dag = dcf_array[44] * 4 +dcf_array[43] * 2 + dcf_array[42] * 1;
flowcode 0:0d02d25adbcd 152
flowcode 0:0d02d25adbcd 153 //-----------------------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 154
flowcode 0:0d02d25adbcd 155 //calculate day----------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 156 dagl = dcf_array[39] * 8 + dcf_array[38] * 4 + dcf_array[37] * 2 + dcf_array[36] * 1;
flowcode 0:0d02d25adbcd 157 dagh = dcf_array[41] * 20 + dcf_array[40] * 10;
flowcode 0:0d02d25adbcd 158 dag=dagh+dagl;
flowcode 0:0d02d25adbcd 159
flowcode 0:0d02d25adbcd 160 //calculate month--------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 161 maandh = dcf_array[49] * 10;
flowcode 0:0d02d25adbcd 162 maandl = dcf_array[48] * 8 + dcf_array[47] * 4 + dcf_array[46] * 2 + dcf_array[45] * 1;
flowcode 0:0d02d25adbcd 163 maand = maandh +maandl;
flowcode 0:0d02d25adbcd 164
flowcode 0:0d02d25adbcd 165 //calculate year---------------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 166 jaarh = dcf_array[57] * 80 + dcf_array[56] * 40 + dcf_array[55] * 20 + dcf_array[54] * 10;
flowcode 0:0d02d25adbcd 167 jaarl = dcf_array[53] * 8 +dcf_array[52] * 4 + dcf_array[51] * 2 + dcf_array[50] * 1;
flowcode 0:0d02d25adbcd 168 jaar = jaarh+jaarl;
flowcode 0:0d02d25adbcd 169
flowcode 0:0d02d25adbcd 170 //calculate parity
flowcode 0:0d02d25adbcd 171 paritym = dcf_array[21] + dcf_array[22] + dcf_array[23] + dcf_array[24] + dcf_array[25] + dcf_array[26] +dcf_array[27] +dcf_array [28];
flowcode 0:0d02d25adbcd 172 parityu =dcf_array[29] + dcf_array[30] + dcf_array[31] + dcf_array[32] + dcf_array[33] + dcf_array[34] + dcf_array[35];
flowcode 0:0d02d25adbcd 173 paritydmy =dcf_array[36] + dcf_array [37] + dcf_array [38] + dcf_array [39] + dcf_array[40] + dcf_array[41] + dcf_array [42] + dcf_array [43] + dcf_array[44] + dcf_array [45] + dcf_array[46] + dcf_array [47] + dcf_array[48] + dcf_array[49] + dcf_array[50] + dcf_array[51] + dcf_array [52] + dcf_array[53] + dcf_array[54] + dcf_array[55] + dcf_array[56] + dcf_array[57] + dcf_array[58];
flowcode 0:0d02d25adbcd 174
flowcode 0:0d02d25adbcd 175 //test parity------------------------------
flowcode 0:0d02d25adbcd 176 testu=parityu & 1;
flowcode 0:0d02d25adbcd 177 testm=paritym & 1;
flowcode 0:0d02d25adbcd 178 testdmy=paritydmy &1;
flowcode 0:0d02d25adbcd 179
flowcode 0:0d02d25adbcd 180 lcd_txt();
flowcode 0:0d02d25adbcd 181
flowcode 0:0d02d25adbcd 182 }//ed 3e while_loop
flowcode 0:0d02d25adbcd 183
flowcode 0:0d02d25adbcd 184 }//end_2eWhile_loop
flowcode 0:0d02d25adbcd 185
flowcode 0:0d02d25adbcd 186 }// end_1eWhile_loop
flowcode 0:0d02d25adbcd 187
flowcode 0:0d02d25adbcd 188 }//end main_programm
flowcode 0:0d02d25adbcd 189 //============================================================================
flowcode 0:0d02d25adbcd 190
flowcode 0:0d02d25adbcd 191 //START makro syc
flowcode 0:0d02d25adbcd 192 void sync () {
flowcode 0:0d02d25adbcd 193 loop_i=0;
flowcode 0:0d02d25adbcd 194 while (loop_i<20) {
flowcode 0:0d02d25adbcd 195 if (dcf_in==0) {
flowcode 0:0d02d25adbcd 196 loop_i++;
flowcode 0:0d02d25adbcd 197 wait (0.050);
flowcode 0:0d02d25adbcd 198 } else {
flowcode 0:0d02d25adbcd 199 loop_i=0;
flowcode 0:0d02d25adbcd 200 }
flowcode 0:0d02d25adbcd 201 }
flowcode 0:0d02d25adbcd 202 }// end makro syc
flowcode 0:0d02d25adbcd 203 //====================================================================
flowcode 0:0d02d25adbcd 204
flowcode 0:0d02d25adbcd 205 //STRART makro getbit
flowcode 0:0d02d25adbcd 206
flowcode 0:0d02d25adbcd 207 void getbit () {
flowcode 0:0d02d25adbcd 208
flowcode 0:0d02d25adbcd 209 sign_bit_0 = 0;
flowcode 0:0d02d25adbcd 210 sign_bit_1 = 0;
flowcode 0:0d02d25adbcd 211
flowcode 0:0d02d25adbcd 212 while (dcf_in==0);
flowcode 0:0d02d25adbcd 213 wait (0.150);
flowcode 0:0d02d25adbcd 214
flowcode 0:0d02d25adbcd 215 if (dcf_in==0) {
flowcode 0:0d02d25adbcd 216 sign_bit_0=1;
flowcode 0:0d02d25adbcd 217 sign_bit_1=0;
flowcode 0:0d02d25adbcd 218 bit=0;
flowcode 0:0d02d25adbcd 219 } else {
flowcode 0:0d02d25adbcd 220 sign_bit_1=1;
flowcode 0:0d02d25adbcd 221 sign_bit_0=0;
flowcode 0:0d02d25adbcd 222 bit=1;
flowcode 0:0d02d25adbcd 223 }
flowcode 0:0d02d25adbcd 224
flowcode 0:0d02d25adbcd 225 while (dcf_in) ;
flowcode 0:0d02d25adbcd 226
flowcode 0:0d02d25adbcd 227 sec++;
flowcode 0:0d02d25adbcd 228
flowcode 0:0d02d25adbcd 229 if (sec==61) {
flowcode 0:0d02d25adbcd 230 sec=1;
flowcode 0:0d02d25adbcd 231 }
flowcode 0:0d02d25adbcd 232
flowcode 0:0d02d25adbcd 233 dcf_array[sec]=bit;
flowcode 0:0d02d25adbcd 234
flowcode 0:0d02d25adbcd 235
flowcode 0:0d02d25adbcd 236
flowcode 0:0d02d25adbcd 237 }//end makro getbit
flowcode 0:0d02d25adbcd 238 //=========================================================
flowcode 0:0d02d25adbcd 239
flowcode 0:0d02d25adbcd 240 //START makro LCD++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
flowcode 0:0d02d25adbcd 241 void lcd_txt () {
flowcode 0:0d02d25adbcd 242 //wait for syncronize
flowcode 0:0d02d25adbcd 243
flowcode 0:0d02d25adbcd 244
flowcode 0:0d02d25adbcd 245 if (wait_sync==120)
flowcode 0:0d02d25adbcd 246 {
flowcode 0:0d02d25adbcd 247 wait_balk=0;
flowcode 0:0d02d25adbcd 248 lcd.cls();
flowcode 0:0d02d25adbcd 249 }
flowcode 0:0d02d25adbcd 250 if (wait_sync > 0) {
flowcode 0:0d02d25adbcd 251
flowcode 0:0d02d25adbcd 252 lcd.locate (0,3);
flowcode 0:0d02d25adbcd 253 lcd.printf("DCF syncronize ");
flowcode 0:0d02d25adbcd 254 lcd.locate (0,5);
flowcode 0:0d02d25adbcd 255 lcd.printf("in:");
flowcode 0:0d02d25adbcd 256 lcd.printf("%dsec",wait_sync);
flowcode 0:0d02d25adbcd 257 wait_sync=wait_sync-1;
flowcode 0:0d02d25adbcd 258 wait_balk=wait_balk+1;
flowcode 0:0d02d25adbcd 259 lcd.fill(1,80,wait_balk,20,0xFF0000);
flowcode 0:0d02d25adbcd 260
flowcode 0:0d02d25adbcd 261
flowcode 0:0d02d25adbcd 262 if (wait_sync==99) {
flowcode 0:0d02d25adbcd 263 lcd.cls();
flowcode 0:0d02d25adbcd 264 }
flowcode 0:0d02d25adbcd 265 if (wait_sync==9) {
flowcode 0:0d02d25adbcd 266 lcd.cls();
flowcode 0:0d02d25adbcd 267 }
flowcode 0:0d02d25adbcd 268 if (wait_sync==0) {
flowcode 0:0d02d25adbcd 269 lcd.cls();
flowcode 0:0d02d25adbcd 270 }
flowcode 0:0d02d25adbcd 271 } //end wait for syncronize
flowcode 0:0d02d25adbcd 272
flowcode 0:0d02d25adbcd 273 if (wait_sync==0) {
flowcode 0:0d02d25adbcd 274 parall= testu or testm or testdmy;
flowcode 0:0d02d25adbcd 275 if (parall) {
flowcode 0:0d02d25adbcd 276 lcd.cls();
flowcode 0:0d02d25adbcd 277 lcd.printf("signal ERROR");
flowcode 0:0d02d25adbcd 278 }
flowcode 0:0d02d25adbcd 279 if (parall==0) {
flowcode 0:0d02d25adbcd 280 if (lcd_sec==59) lcd.cls();
flowcode 0:0d02d25adbcd 281 pc.printf("\x1B\x4A");
flowcode 0:0d02d25adbcd 282 lcd.locate(0,3);
flowcode 0:0d02d25adbcd 283 lcd.foreground (0xFFFFFF);
flowcode 0:0d02d25adbcd 284 //summer/wintertime ZT or WT
flowcode 0:0d02d25adbcd 285 if (summertime==0) {
flowcode 0:0d02d25adbcd 286 lcd.printf("WT ");
flowcode 0:0d02d25adbcd 287 pc.printf(" Wintertime ");
flowcode 0:0d02d25adbcd 288 } else {
flowcode 0:0d02d25adbcd 289 lcd.printf("ZT ");
flowcode 0:0d02d25adbcd 290 pc.printf(" Summertime ");
flowcode 0:0d02d25adbcd 291 }
flowcode 0:0d02d25adbcd 292
flowcode 0:0d02d25adbcd 293 // UUR---------------------------------------------
flowcode 0:0d02d25adbcd 294 lcd.printf("%d:",uur);
flowcode 0:0d02d25adbcd 295 pc.printf("%d:",uur);
flowcode 0:0d02d25adbcd 296
flowcode 0:0d02d25adbcd 297 //MIN----------------------------------------------
flowcode 0:0d02d25adbcd 298 if (min<10) lcd.printf("0");
flowcode 0:0d02d25adbcd 299 lcd.printf("%d:",min);
flowcode 0:0d02d25adbcd 300 pc.printf("%d:",min);
flowcode 0:0d02d25adbcd 301
flowcode 0:0d02d25adbcd 302 //SEC----------------------------------------------
flowcode 0:0d02d25adbcd 303 lcd_sec=sec;
flowcode 0:0d02d25adbcd 304 if (lcd_sec==60)lcd_sec=0;
flowcode 0:0d02d25adbcd 305 if (lcd_sec<10) {
flowcode 0:0d02d25adbcd 306 lcd.printf("0");
flowcode 0:0d02d25adbcd 307 pc.printf("0");
flowcode 0:0d02d25adbcd 308 }
flowcode 0:0d02d25adbcd 309 lcd.printf("%d",lcd_sec);
flowcode 0:0d02d25adbcd 310 pc.printf("%d ",lcd_sec);
flowcode 0:0d02d25adbcd 311 //LCD col=0 row=1----------------------------------
flowcode 0:0d02d25adbcd 312 lcd.locate(0,5);//nieuwe regel
flowcode 0:0d02d25adbcd 313
flowcode 0:0d02d25adbcd 314
flowcode 0:0d02d25adbcd 315 //week Dag----------------------------------------------
flowcode 0:0d02d25adbcd 316 name_weekdag();
flowcode 0:0d02d25adbcd 317 //Dag-----------------------------------
flowcode 0:0d02d25adbcd 318 lcd.printf(" %d ",dag);
flowcode 0:0d02d25adbcd 319 pc.printf(" %d ",dag);
flowcode 0:0d02d25adbcd 320 //MONTH----------------------------------
flowcode 0:0d02d25adbcd 321 name_month();
flowcode 0:0d02d25adbcd 322 //YEAR-------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 323 lcd.locate (5,10);
flowcode 0:0d02d25adbcd 324 lcd.printf(" 20");
flowcode 0:0d02d25adbcd 325 lcd.printf("%d",jaar);
flowcode 0:0d02d25adbcd 326 pc.printf(" 20");
flowcode 0:0d02d25adbcd 327 pc.printf("%d\r",jaar);
flowcode 0:0d02d25adbcd 328
flowcode 0:0d02d25adbcd 329
flowcode 0:0d02d25adbcd 330 }
flowcode 0:0d02d25adbcd 331
flowcode 0:0d02d25adbcd 332
flowcode 0:0d02d25adbcd 333 }//end if parall
flowcode 0:0d02d25adbcd 334 }//end if wait syncronize
flowcode 0:0d02d25adbcd 335
flowcode 0:0d02d25adbcd 336
flowcode 0:0d02d25adbcd 337 //end MAKRO lcd++++++++++++++++++++++++++++++++++++++++++++++++++++++++
flowcode 0:0d02d25adbcd 338
flowcode 0:0d02d25adbcd 339 //START MAKRO NAME_Week dag-----------------------------------------
flowcode 0:0d02d25adbcd 340 void name_weekdag() {
flowcode 0:0d02d25adbcd 341
flowcode 0:0d02d25adbcd 342 switch (w_dag) {
flowcode 0:0d02d25adbcd 343 case 1: {
flowcode 0:0d02d25adbcd 344 lcd.printf("Maandag");
flowcode 0:0d02d25adbcd 345 pc.printf("Ma");
flowcode 0:0d02d25adbcd 346 break;
flowcode 0:0d02d25adbcd 347 }
flowcode 0:0d02d25adbcd 348
flowcode 0:0d02d25adbcd 349 case 2: {
flowcode 0:0d02d25adbcd 350 lcd.printf("Dinsdag");
flowcode 0:0d02d25adbcd 351 pc.printf("Di");
flowcode 0:0d02d25adbcd 352 break;
flowcode 0:0d02d25adbcd 353 }
flowcode 0:0d02d25adbcd 354
flowcode 0:0d02d25adbcd 355 case 3: {
flowcode 0:0d02d25adbcd 356 lcd.printf("Woensdag");
flowcode 0:0d02d25adbcd 357 pc.printf("Wo");
flowcode 0:0d02d25adbcd 358 break;
flowcode 0:0d02d25adbcd 359 }
flowcode 0:0d02d25adbcd 360
flowcode 0:0d02d25adbcd 361 case 4: {
flowcode 0:0d02d25adbcd 362 lcd.printf("Donderdag");
flowcode 0:0d02d25adbcd 363 pc.printf("Do");
flowcode 0:0d02d25adbcd 364 break;
flowcode 0:0d02d25adbcd 365 }
flowcode 0:0d02d25adbcd 366
flowcode 0:0d02d25adbcd 367 case 5: {
flowcode 0:0d02d25adbcd 368 lcd.printf("Vrijdag");
flowcode 0:0d02d25adbcd 369 pc.printf("Vr");
flowcode 0:0d02d25adbcd 370 break;
flowcode 0:0d02d25adbcd 371 }
flowcode 0:0d02d25adbcd 372
flowcode 0:0d02d25adbcd 373 case 6: {
flowcode 0:0d02d25adbcd 374 lcd.printf("Zaterdag");
flowcode 0:0d02d25adbcd 375 pc.printf("Za");
flowcode 0:0d02d25adbcd 376 break;
flowcode 0:0d02d25adbcd 377 }
flowcode 0:0d02d25adbcd 378
flowcode 0:0d02d25adbcd 379 case 7: {
flowcode 0:0d02d25adbcd 380 lcd.foreground (0xFF0000);//rood
flowcode 0:0d02d25adbcd 381 lcd.printf("Zondag");
flowcode 0:0d02d25adbcd 382 pc.printf("Zo");
flowcode 0:0d02d25adbcd 383 break;
flowcode 0:0d02d25adbcd 384 }
flowcode 0:0d02d25adbcd 385 }
flowcode 0:0d02d25adbcd 386
flowcode 0:0d02d25adbcd 387 lcd.locate (0,7);
flowcode 0:0d02d25adbcd 388 }
flowcode 0:0d02d25adbcd 389
flowcode 0:0d02d25adbcd 390 //END name_weekday--------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 391
flowcode 0:0d02d25adbcd 392 //start makro name_month-------------------------------------------------------------------
flowcode 0:0d02d25adbcd 393 void name_month () {
flowcode 0:0d02d25adbcd 394
flowcode 0:0d02d25adbcd 395 lcd.foreground (0xFFFFFF); //wit
flowcode 0:0d02d25adbcd 396
flowcode 0:0d02d25adbcd 397 switch (maand) {
flowcode 0:0d02d25adbcd 398 case 1: {
flowcode 0:0d02d25adbcd 399 lcd.printf("Januari");
flowcode 0:0d02d25adbcd 400 pc.printf("Jan");
flowcode 0:0d02d25adbcd 401 break;
flowcode 0:0d02d25adbcd 402 }
flowcode 0:0d02d25adbcd 403
flowcode 0:0d02d25adbcd 404 case 2: {
flowcode 0:0d02d25adbcd 405 lcd.printf("Februari");
flowcode 0:0d02d25adbcd 406 pc.printf("Feb");
flowcode 0:0d02d25adbcd 407 break;
flowcode 0:0d02d25adbcd 408 }
flowcode 0:0d02d25adbcd 409
flowcode 0:0d02d25adbcd 410 case 3: {
flowcode 0:0d02d25adbcd 411 lcd.printf("Maart");
flowcode 0:0d02d25adbcd 412 pc.printf("Mrt");
flowcode 0:0d02d25adbcd 413 break;
flowcode 0:0d02d25adbcd 414 }
flowcode 0:0d02d25adbcd 415
flowcode 0:0d02d25adbcd 416 case 4: {
flowcode 0:0d02d25adbcd 417 lcd.printf("April");
flowcode 0:0d02d25adbcd 418 pc.printf("Apr");
flowcode 0:0d02d25adbcd 419 break;
flowcode 0:0d02d25adbcd 420 }
flowcode 0:0d02d25adbcd 421
flowcode 0:0d02d25adbcd 422 case 5: {
flowcode 0:0d02d25adbcd 423 lcd.printf("Mei");
flowcode 0:0d02d25adbcd 424 pc.printf("Mei");
flowcode 0:0d02d25adbcd 425 break;
flowcode 0:0d02d25adbcd 426 }
flowcode 0:0d02d25adbcd 427
flowcode 0:0d02d25adbcd 428 case 6: {
flowcode 0:0d02d25adbcd 429 lcd.printf("Juni");
flowcode 0:0d02d25adbcd 430 pc.printf("Jun");
flowcode 0:0d02d25adbcd 431 break;
flowcode 0:0d02d25adbcd 432 }
flowcode 0:0d02d25adbcd 433
flowcode 0:0d02d25adbcd 434 case 7: {
flowcode 0:0d02d25adbcd 435 lcd.printf("Juli");
flowcode 0:0d02d25adbcd 436 pc.printf("Jul");
flowcode 0:0d02d25adbcd 437 break;
flowcode 0:0d02d25adbcd 438 }
flowcode 0:0d02d25adbcd 439
flowcode 0:0d02d25adbcd 440 case 8: {
flowcode 0:0d02d25adbcd 441 lcd.printf("Augustus");
flowcode 0:0d02d25adbcd 442 pc.printf("Aug");
flowcode 0:0d02d25adbcd 443 break;
flowcode 0:0d02d25adbcd 444 }
flowcode 0:0d02d25adbcd 445
flowcode 0:0d02d25adbcd 446 case 9: {
flowcode 0:0d02d25adbcd 447 lcd.printf("September");
flowcode 0:0d02d25adbcd 448 pc.printf("Sep");
flowcode 0:0d02d25adbcd 449
flowcode 0:0d02d25adbcd 450
flowcode 0:0d02d25adbcd 451 break;
flowcode 0:0d02d25adbcd 452 }
flowcode 0:0d02d25adbcd 453
flowcode 0:0d02d25adbcd 454 case 10: {
flowcode 0:0d02d25adbcd 455 lcd.printf("Oktober");
flowcode 0:0d02d25adbcd 456 pc.printf("Okt");
flowcode 0:0d02d25adbcd 457 break;
flowcode 0:0d02d25adbcd 458 }
flowcode 0:0d02d25adbcd 459
flowcode 0:0d02d25adbcd 460 case 11: {
flowcode 0:0d02d25adbcd 461 lcd.printf("November");
flowcode 0:0d02d25adbcd 462 pc.printf("Nov");
flowcode 0:0d02d25adbcd 463 break;
flowcode 0:0d02d25adbcd 464 }
flowcode 0:0d02d25adbcd 465
flowcode 0:0d02d25adbcd 466 case 12: {
flowcode 0:0d02d25adbcd 467 lcd.printf("December");
flowcode 0:0d02d25adbcd 468 pc.printf("Dec");
flowcode 0:0d02d25adbcd 469 break;
flowcode 0:0d02d25adbcd 470 }
flowcode 0:0d02d25adbcd 471
flowcode 0:0d02d25adbcd 472 }
flowcode 0:0d02d25adbcd 473
flowcode 0:0d02d25adbcd 474 }
flowcode 0:0d02d25adbcd 475 //end MAKRO name_month-------------------------------------------------------------------------------
flowcode 0:0d02d25adbcd 476