Reloj con 4 alarmas independientes basado en reloj alarma de tony63

Dependencies:   Debounced QEI RTC-DS1307 TextLCD mbed

Fork of Reloj_alarma by Gustavo Ramirez

Committer:
kolive360
Date:
Fri Oct 28 01:33:54 2016 +0000
Revision:
2:ceffe5bd46e9
Parent:
1:0639f31dd59f
Reloj con 4 alarmas independientes basado en reloj alarma de tony63

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jepalacioh 0:c2ed510ee88d 1 #include "mbed.h"
Jepalacioh 0:c2ed510ee88d 2 #include "DebouncedIn.h"
Jepalacioh 0:c2ed510ee88d 3 #include "TextLCD.h"
Jepalacioh 0:c2ed510ee88d 4 #include "QEI.h"
Jepalacioh 0:c2ed510ee88d 5 #include "Rtc_Ds1307.h"
Jepalacioh 0:c2ed510ee88d 6
Jepalacioh 0:c2ed510ee88d 7 TextLCD lcd(PTB10, PTB11, PTE2, PTE3, PTE4, PTE5); // rs, e, d4-d7
kolive360 2:ceffe5bd46e9 8 Rtc_Ds1307 rtc(PTE0, PTE1);//SCL,SDA
Jepalacioh 0:c2ed510ee88d 9 QEI wheel (PTA16, PTA17, NC, 48);
Jepalacioh 0:c2ed510ee88d 10
Jepalacioh 0:c2ed510ee88d 11 DebouncedIn button_enco(PTC5);
kolive360 2:ceffe5bd46e9 12 //DebouncedIn button_confi(PTB8);
kolive360 2:ceffe5bd46e9 13 //InterruptIn button_confi(PTB8);
kolive360 2:ceffe5bd46e9 14
kolive360 2:ceffe5bd46e9 15 DigitalOut led1(PTC7);
kolive360 2:ceffe5bd46e9 16 DigitalOut led2(PTC0);
kolive360 2:ceffe5bd46e9 17 DigitalOut led3(PTC3);
kolive360 2:ceffe5bd46e9 18 DigitalOut led4(PTC4);
Jepalacioh 0:c2ed510ee88d 19
Jepalacioh 0:c2ed510ee88d 20 PwmOut Sonido(PTA5);
Jepalacioh 0:c2ed510ee88d 21
Jepalacioh 0:c2ed510ee88d 22 float periodo;
Jepalacioh 0:c2ed510ee88d 23 float Frecuencia=4000;
Jepalacioh 0:c2ed510ee88d 24 int C1=0x0C;
kolive360 2:ceffe5bd46e9 25 int m,k,x1,x2,x3,x4;
kolive360 2:ceffe5bd46e9 26 int numero=1;
Jepalacioh 0:c2ed510ee88d 27 int Conf=0; // 0: Alarma y 1:Reloj
Jepalacioh 0:c2ed510ee88d 28 int Lugar=0; // Definen el punto en el cual va el programa
Jepalacioh 0:c2ed510ee88d 29 int i=0;
Jepalacioh 0:c2ed510ee88d 30 int visual=0;
kolive360 2:ceffe5bd46e9 31 int alarma=0;
kolive360 2:ceffe5bd46e9 32
Jepalacioh 0:c2ed510ee88d 33
Jepalacioh 0:c2ed510ee88d 34 int main()
Jepalacioh 0:c2ed510ee88d 35 {
Jepalacioh 0:c2ed510ee88d 36 Rtc_Ds1307::Time_rtc tm = {};
Jepalacioh 0:c2ed510ee88d 37 Rtc_Ds1307::Time_rtc Alarm = {};
kolive360 2:ceffe5bd46e9 38 Rtc_Ds1307::Time_rtc Alarm2 = {};
kolive360 2:ceffe5bd46e9 39 Rtc_Ds1307::Time_rtc Alarm3 = {};
kolive360 2:ceffe5bd46e9 40 Rtc_Ds1307::Time_rtc Alarm4 = {};
Jepalacioh 0:c2ed510ee88d 41 lcd.cls();
Jepalacioh 0:c2ed510ee88d 42 lcd.writeCommand(C1);//escribimos un comando segun el manual del modulo LCD
kolive360 2:ceffe5bd46e9 43
Jepalacioh 0:c2ed510ee88d 44 periodo=(1/Frecuencia);
Jepalacioh 0:c2ed510ee88d 45 Sonido.period(periodo);
Jepalacioh 0:c2ed510ee88d 46
Jepalacioh 0:c2ed510ee88d 47
kolive360 2:ceffe5bd46e9 48 while(1){
kolive360 2:ceffe5bd46e9 49 switch (Lugar){
kolive360 2:ceffe5bd46e9 50 case 0: //Menu principal
kolive360 2:ceffe5bd46e9 51 rtc.getTime(tm); //lee el tiempo del DS1307
kolive360 2:ceffe5bd46e9 52 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 53 lcd.printf("%02d:%02d %02d/%02d/%02d", tm.hour, tm.min, tm.date, tm.mon, tm.year);
kolive360 2:ceffe5bd46e9 54 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 55 lcd.printf("-C.Alar -C.Hora");
tony63 1:0639f31dd59f 56 m=wheel.getPulses(); // m son los datos del encoder
Jepalacioh 0:c2ed510ee88d 57 if(m!=0 && Conf==0){
Jepalacioh 0:c2ed510ee88d 58 Conf=1;
Jepalacioh 0:c2ed510ee88d 59 wheel.reset();
Jepalacioh 0:c2ed510ee88d 60 m=0;
Jepalacioh 0:c2ed510ee88d 61 }
kolive360 2:ceffe5bd46e9 62 if(m!=0 && Conf==1){
Jepalacioh 0:c2ed510ee88d 63 Conf=0;
Jepalacioh 0:c2ed510ee88d 64 wheel.reset();
Jepalacioh 0:c2ed510ee88d 65 m=0;
Jepalacioh 0:c2ed510ee88d 66 }
Jepalacioh 0:c2ed510ee88d 67 if(Conf==0){
kolive360 2:ceffe5bd46e9 68 lcd.locate(9,1);
Jepalacioh 0:c2ed510ee88d 69 lcd.printf("-");
kolive360 2:ceffe5bd46e9 70 lcd.locate(0,1);
Jepalacioh 0:c2ed510ee88d 71 lcd.printf(">");
kolive360 2:ceffe5bd46e9 72 //lcd.locate(0,1);
Jepalacioh 0:c2ed510ee88d 73 wait(0.1);
Jepalacioh 0:c2ed510ee88d 74 }
kolive360 2:ceffe5bd46e9 75 if(Conf==1){
kolive360 2:ceffe5bd46e9 76 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 77 lcd.printf("-");
kolive360 2:ceffe5bd46e9 78 lcd.locate(9,1);
kolive360 2:ceffe5bd46e9 79 lcd.printf(">");
kolive360 2:ceffe5bd46e9 80 //lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 81 wait(0.1);
kolive360 2:ceffe5bd46e9 82 }
tony63 1:0639f31dd59f 83 if (button_enco.falling()){ //si se pulsa boton encoder
Jepalacioh 0:c2ed510ee88d 84 Lugar++;
Jepalacioh 0:c2ed510ee88d 85 m=0;
Jepalacioh 0:c2ed510ee88d 86 }
Jepalacioh 0:c2ed510ee88d 87 break;
Jepalacioh 0:c2ed510ee88d 88
kolive360 2:ceffe5bd46e9 89 case 1://Configurar
kolive360 2:ceffe5bd46e9 90 switch(i){
Jepalacioh 0:c2ed510ee88d 91 case 0:
kolive360 2:ceffe5bd46e9 92 if(Conf==0){
Jepalacioh 0:c2ed510ee88d 93 lcd.cls();
Jepalacioh 0:c2ed510ee88d 94 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 95 lcd.printf("Config. Alarma ");
Jepalacioh 0:c2ed510ee88d 96 wait(1);
kolive360 2:ceffe5bd46e9 97 goto lazo;
kolive360 2:ceffe5bd46e9 98 sigo: i++;
Jepalacioh 0:c2ed510ee88d 99 m=0;
Jepalacioh 0:c2ed510ee88d 100 lcd.cls();
Jepalacioh 0:c2ed510ee88d 101 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 102 lcd.printf("Dia: ");
Jepalacioh 0:c2ed510ee88d 103 tm.date=1;
Jepalacioh 0:c2ed510ee88d 104 }
kolive360 2:ceffe5bd46e9 105 if(Conf==1){
Jepalacioh 0:c2ed510ee88d 106 lcd.cls();
Jepalacioh 0:c2ed510ee88d 107 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 108 lcd.printf("Config. hora ");
Jepalacioh 0:c2ed510ee88d 109 wait(1);
Jepalacioh 0:c2ed510ee88d 110 i++;
Jepalacioh 0:c2ed510ee88d 111 m=0;
Jepalacioh 0:c2ed510ee88d 112 lcd.cls();
Jepalacioh 0:c2ed510ee88d 113 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 114 lcd.printf("Dia: ");
Jepalacioh 0:c2ed510ee88d 115 }
Jepalacioh 0:c2ed510ee88d 116 break;
Jepalacioh 0:c2ed510ee88d 117
Jepalacioh 0:c2ed510ee88d 118 case 1:
Jepalacioh 0:c2ed510ee88d 119 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 120 if (m!=0){
Jepalacioh 0:c2ed510ee88d 121 tm.date=tm.date+m;
kolive360 2:ceffe5bd46e9 122 if(tm.date>31){
Jepalacioh 0:c2ed510ee88d 123 tm.date=31;
Jepalacioh 0:c2ed510ee88d 124 }
kolive360 2:ceffe5bd46e9 125 if(tm.date<1){
Jepalacioh 0:c2ed510ee88d 126 tm.date=1;
Jepalacioh 0:c2ed510ee88d 127 }
Jepalacioh 0:c2ed510ee88d 128 wheel.reset();
Jepalacioh 0:c2ed510ee88d 129 m=0;
Jepalacioh 0:c2ed510ee88d 130 }
Jepalacioh 0:c2ed510ee88d 131 lcd.locate(5,0);
Jepalacioh 0:c2ed510ee88d 132 lcd.printf("%02d",tm.date);
Jepalacioh 0:c2ed510ee88d 133
kolive360 2:ceffe5bd46e9 134 if (button_enco.falling()){
Jepalacioh 0:c2ed510ee88d 135 i++;
Jepalacioh 0:c2ed510ee88d 136 m=0;
Jepalacioh 0:c2ed510ee88d 137 lcd.cls();
Jepalacioh 0:c2ed510ee88d 138 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 139 lcd.printf("Mes: ");
Jepalacioh 0:c2ed510ee88d 140 //tm.mon=1;
Jepalacioh 0:c2ed510ee88d 141 }
Jepalacioh 0:c2ed510ee88d 142 break;
Jepalacioh 0:c2ed510ee88d 143
Jepalacioh 0:c2ed510ee88d 144 case 2:
Jepalacioh 0:c2ed510ee88d 145 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 146 if (m!=0){
Jepalacioh 0:c2ed510ee88d 147 tm.mon=tm.mon+m;
kolive360 2:ceffe5bd46e9 148 if(tm.mon>12){
Jepalacioh 0:c2ed510ee88d 149 tm.mon=12;
Jepalacioh 0:c2ed510ee88d 150 }
kolive360 2:ceffe5bd46e9 151 if(tm.mon<1){
Jepalacioh 0:c2ed510ee88d 152 tm.mon=1;
Jepalacioh 0:c2ed510ee88d 153 }
Jepalacioh 0:c2ed510ee88d 154
Jepalacioh 0:c2ed510ee88d 155 wheel.reset();
Jepalacioh 0:c2ed510ee88d 156 m=0;
Jepalacioh 0:c2ed510ee88d 157 }
Jepalacioh 0:c2ed510ee88d 158 lcd.locate(5,0);
Jepalacioh 0:c2ed510ee88d 159 lcd.printf("%02d",tm.mon);
Jepalacioh 0:c2ed510ee88d 160
kolive360 2:ceffe5bd46e9 161 if (button_enco.falling()){
Jepalacioh 0:c2ed510ee88d 162 i++;
Jepalacioh 0:c2ed510ee88d 163 m=0;
Jepalacioh 0:c2ed510ee88d 164 lcd.cls();
Jepalacioh 0:c2ed510ee88d 165 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 166 lcd.printf("Year: ");
tony63 1:0639f31dd59f 167
Jepalacioh 0:c2ed510ee88d 168 }
Jepalacioh 0:c2ed510ee88d 169 break;
Jepalacioh 0:c2ed510ee88d 170
Jepalacioh 0:c2ed510ee88d 171 case 3:
Jepalacioh 0:c2ed510ee88d 172 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 173 if (m!=0){
Jepalacioh 0:c2ed510ee88d 174 tm.year=tm.year+m;
Jepalacioh 0:c2ed510ee88d 175
kolive360 2:ceffe5bd46e9 176 if(tm.year<2016){
kolive360 2:ceffe5bd46e9 177 tm.year=2016;
Jepalacioh 0:c2ed510ee88d 178 }
Jepalacioh 0:c2ed510ee88d 179
Jepalacioh 0:c2ed510ee88d 180 wheel.reset();
Jepalacioh 0:c2ed510ee88d 181 m=0;
Jepalacioh 0:c2ed510ee88d 182 }
Jepalacioh 0:c2ed510ee88d 183 lcd.locate(6,0);
Jepalacioh 0:c2ed510ee88d 184 lcd.printf("%02d",tm.year);
Jepalacioh 0:c2ed510ee88d 185
kolive360 2:ceffe5bd46e9 186 if (button_enco.falling()){
Jepalacioh 0:c2ed510ee88d 187 i++;
Jepalacioh 0:c2ed510ee88d 188 m=0;
Jepalacioh 0:c2ed510ee88d 189 lcd.cls();
Jepalacioh 0:c2ed510ee88d 190 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 191 lcd.printf("Hora: ");
tony63 1:0639f31dd59f 192
Jepalacioh 0:c2ed510ee88d 193 }
Jepalacioh 0:c2ed510ee88d 194 break;
Jepalacioh 0:c2ed510ee88d 195
Jepalacioh 0:c2ed510ee88d 196 case 4:
Jepalacioh 0:c2ed510ee88d 197 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 198 if (m!=0){
Jepalacioh 0:c2ed510ee88d 199 tm.hour=tm.hour + m;
kolive360 2:ceffe5bd46e9 200 if(tm.hour>23){
Jepalacioh 0:c2ed510ee88d 201 tm.hour=23;
Jepalacioh 0:c2ed510ee88d 202 }
kolive360 2:ceffe5bd46e9 203 if(tm.hour<0){
Jepalacioh 0:c2ed510ee88d 204 tm.hour=0;
Jepalacioh 0:c2ed510ee88d 205 }
Jepalacioh 0:c2ed510ee88d 206
Jepalacioh 0:c2ed510ee88d 207 wheel.reset();
Jepalacioh 0:c2ed510ee88d 208 m=0;
Jepalacioh 0:c2ed510ee88d 209 }
Jepalacioh 0:c2ed510ee88d 210 lcd.locate(6,0);
Jepalacioh 0:c2ed510ee88d 211 lcd.printf("%02d",tm.hour);
Jepalacioh 0:c2ed510ee88d 212
kolive360 2:ceffe5bd46e9 213 if (button_enco.falling()){
Jepalacioh 0:c2ed510ee88d 214 i++;
Jepalacioh 0:c2ed510ee88d 215 m=0;
Jepalacioh 0:c2ed510ee88d 216 lcd.cls();
Jepalacioh 0:c2ed510ee88d 217 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 218 lcd.printf("Minuto: ");
Jepalacioh 0:c2ed510ee88d 219 //tm.min=0;
Jepalacioh 0:c2ed510ee88d 220 }
Jepalacioh 0:c2ed510ee88d 221 break;
Jepalacioh 0:c2ed510ee88d 222
Jepalacioh 0:c2ed510ee88d 223 case 5:
Jepalacioh 0:c2ed510ee88d 224 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 225 if (m!=0){
Jepalacioh 0:c2ed510ee88d 226 tm.min=tm.min+m;
kolive360 2:ceffe5bd46e9 227 if(tm.min>59){
Jepalacioh 0:c2ed510ee88d 228 tm.min=59;
Jepalacioh 0:c2ed510ee88d 229 }
kolive360 2:ceffe5bd46e9 230 if(tm.min<0){
Jepalacioh 0:c2ed510ee88d 231 tm.min=0;
Jepalacioh 0:c2ed510ee88d 232 }
Jepalacioh 0:c2ed510ee88d 233 wheel.reset();
Jepalacioh 0:c2ed510ee88d 234 m=0;
Jepalacioh 0:c2ed510ee88d 235 }
Jepalacioh 0:c2ed510ee88d 236 lcd.locate(8,0);
Jepalacioh 0:c2ed510ee88d 237 lcd.printf("%02d",tm.min);
Jepalacioh 0:c2ed510ee88d 238
kolive360 2:ceffe5bd46e9 239 if (button_enco.falling()){
Jepalacioh 0:c2ed510ee88d 240 i++;
Jepalacioh 0:c2ed510ee88d 241 m=0;
Jepalacioh 0:c2ed510ee88d 242 lcd.cls();
Jepalacioh 0:c2ed510ee88d 243 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 244 lcd.printf("Segundo: ");
Jepalacioh 0:c2ed510ee88d 245 //tm.sec=0;
Jepalacioh 0:c2ed510ee88d 246 }
Jepalacioh 0:c2ed510ee88d 247 break;
Jepalacioh 0:c2ed510ee88d 248
Jepalacioh 0:c2ed510ee88d 249
Jepalacioh 0:c2ed510ee88d 250 case 6:
Jepalacioh 0:c2ed510ee88d 251 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 252 if (m!=0){
Jepalacioh 0:c2ed510ee88d 253 tm.sec=tm.sec+m;
kolive360 2:ceffe5bd46e9 254 if(tm.sec>59){
Jepalacioh 0:c2ed510ee88d 255 tm.sec=59;
Jepalacioh 0:c2ed510ee88d 256 }
kolive360 2:ceffe5bd46e9 257 if(tm.sec<0){
Jepalacioh 0:c2ed510ee88d 258 tm.sec=0;
Jepalacioh 0:c2ed510ee88d 259 }
Jepalacioh 0:c2ed510ee88d 260
Jepalacioh 0:c2ed510ee88d 261 wheel.reset();
Jepalacioh 0:c2ed510ee88d 262 m=0;
Jepalacioh 0:c2ed510ee88d 263 }
Jepalacioh 0:c2ed510ee88d 264 lcd.locate(9,0);
Jepalacioh 0:c2ed510ee88d 265 lcd.printf("%02d",tm.sec);
Jepalacioh 0:c2ed510ee88d 266
kolive360 2:ceffe5bd46e9 267 if (button_enco.falling()){
Jepalacioh 0:c2ed510ee88d 268 ///////////////////
kolive360 2:ceffe5bd46e9 269 if(Conf==0){
kolive360 2:ceffe5bd46e9 270 if(numero ==1){
kolive360 2:ceffe5bd46e9 271 Alarm=tm;
kolive360 2:ceffe5bd46e9 272 x1=1;
kolive360 2:ceffe5bd46e9 273 }
kolive360 2:ceffe5bd46e9 274 if(numero ==2){
kolive360 2:ceffe5bd46e9 275 Alarm2=tm;
kolive360 2:ceffe5bd46e9 276 x2=1;
kolive360 2:ceffe5bd46e9 277 }
kolive360 2:ceffe5bd46e9 278 if(numero ==3){
kolive360 2:ceffe5bd46e9 279 Alarm3=tm;
kolive360 2:ceffe5bd46e9 280 x3=1;
kolive360 2:ceffe5bd46e9 281 }
kolive360 2:ceffe5bd46e9 282 if(numero ==4){
kolive360 2:ceffe5bd46e9 283 Alarm4=tm;
kolive360 2:ceffe5bd46e9 284 x4=1;
kolive360 2:ceffe5bd46e9 285 }
Jepalacioh 0:c2ed510ee88d 286 lcd.cls();
kolive360 2:ceffe5bd46e9 287 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 288 lcd.printf("Alarma %02d config",numero);
Jepalacioh 0:c2ed510ee88d 289 wait(1);
Jepalacioh 0:c2ed510ee88d 290 i=0;
Jepalacioh 0:c2ed510ee88d 291 m=0;
Jepalacioh 0:c2ed510ee88d 292 Lugar++;
Jepalacioh 0:c2ed510ee88d 293 lcd.cls();
Jepalacioh 0:c2ed510ee88d 294 }
Jepalacioh 0:c2ed510ee88d 295
kolive360 2:ceffe5bd46e9 296 if(Conf==1){
Jepalacioh 0:c2ed510ee88d 297 rtc.setTime(tm, false, false);
Jepalacioh 0:c2ed510ee88d 298 rtc.startClock();
Jepalacioh 0:c2ed510ee88d 299 lcd.cls();
Jepalacioh 0:c2ed510ee88d 300 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 301 lcd.printf("Hora Config. ");
Jepalacioh 0:c2ed510ee88d 302 wait(1);
Jepalacioh 0:c2ed510ee88d 303 i=0;
Jepalacioh 0:c2ed510ee88d 304 m=0;
Jepalacioh 0:c2ed510ee88d 305 Lugar=0;
kolive360 2:ceffe5bd46e9 306 rtc.getTime(tm); //lee el tiempo del DS1307
Jepalacioh 0:c2ed510ee88d 307 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 308 lcd.printf("%02:",tm.hour);
kolive360 2:ceffe5bd46e9 309 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 310 lcd.printf("-C.Alar -C.Hora");
kolive360 2:ceffe5bd46e9 311 }
Jepalacioh 0:c2ed510ee88d 312 }
Jepalacioh 0:c2ed510ee88d 313 break;
kolive360 2:ceffe5bd46e9 314 }
Jepalacioh 0:c2ed510ee88d 315 break;
Jepalacioh 0:c2ed510ee88d 316
kolive360 2:ceffe5bd46e9 317 case 2: //Visualizar y Activacion Alarmas
Jepalacioh 0:c2ed510ee88d 318 rtc.getTime(tm);
kolive360 2:ceffe5bd46e9 319 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 320 if(x1==1){
kolive360 2:ceffe5bd46e9 321 led1=1;
kolive360 2:ceffe5bd46e9 322 }
kolive360 2:ceffe5bd46e9 323 if(x2==1){
kolive360 2:ceffe5bd46e9 324 led2=1;
kolive360 2:ceffe5bd46e9 325 }
kolive360 2:ceffe5bd46e9 326 if(x3==1){
kolive360 2:ceffe5bd46e9 327 led3=1;
kolive360 2:ceffe5bd46e9 328 }
kolive360 2:ceffe5bd46e9 329 if(x4==1){
kolive360 2:ceffe5bd46e9 330 led4=1;
kolive360 2:ceffe5bd46e9 331 }
kolive360 2:ceffe5bd46e9 332 if(m!=0){
kolive360 2:ceffe5bd46e9 333 visual=visual+m;
kolive360 2:ceffe5bd46e9 334 if(visual<0){
kolive360 2:ceffe5bd46e9 335 visual=0;
kolive360 2:ceffe5bd46e9 336 }
kolive360 2:ceffe5bd46e9 337 if(visual>4){
kolive360 2:ceffe5bd46e9 338 visual=4;
kolive360 2:ceffe5bd46e9 339 }
kolive360 2:ceffe5bd46e9 340 wheel.reset();
kolive360 2:ceffe5bd46e9 341 m=0;
Jepalacioh 0:c2ed510ee88d 342 }
Jepalacioh 0:c2ed510ee88d 343
kolive360 2:ceffe5bd46e9 344 if(visual==0){//Visualiza hora
kolive360 2:ceffe5bd46e9 345 lcd.cls();
kolive360 2:ceffe5bd46e9 346 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 347 lcd.printf(" Ver %02d:%02d:%02d",tm.hour,tm.min,tm.sec);
kolive360 2:ceffe5bd46e9 348 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 349 lcd.printf("Hora :%02d/%02d/%04d",tm.mon,tm.date,tm.year);
kolive360 2:ceffe5bd46e9 350 wait(0.1);
kolive360 2:ceffe5bd46e9 351 }
kolive360 2:ceffe5bd46e9 352 if(visual==1){//Visualilza alarma1
kolive360 2:ceffe5bd46e9 353 lcd.cls();
kolive360 2:ceffe5bd46e9 354 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 355 lcd.printf(" Ver %02d:%02d:%02d", Alarm.hour, Alarm.min,Alarm.sec);
kolive360 2:ceffe5bd46e9 356 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 357 lcd.printf("Alar1:%02d/%02d/%04d",Alarm.mon,Alarm.date,Alarm.year);
kolive360 2:ceffe5bd46e9 358 wait(0.1);
Jepalacioh 0:c2ed510ee88d 359 }
kolive360 2:ceffe5bd46e9 360 if(visual==2){//Visualiza alarma2
kolive360 2:ceffe5bd46e9 361 lcd.cls();
kolive360 2:ceffe5bd46e9 362 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 363 lcd.printf(" Ver %02d:%02d:%02d", Alarm2.hour, Alarm2.min,Alarm2.sec);
kolive360 2:ceffe5bd46e9 364 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 365 lcd.printf("Alar2:%02d/%02d/%04d",Alarm2.mon,Alarm2.date,Alarm2.year);
kolive360 2:ceffe5bd46e9 366 wait(0.1);
kolive360 2:ceffe5bd46e9 367 }
kolive360 2:ceffe5bd46e9 368 if(visual==3){//Visualiza alarma3
kolive360 2:ceffe5bd46e9 369 lcd.cls();
kolive360 2:ceffe5bd46e9 370 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 371 lcd.printf(" Ver %02d:%02d:%02d", Alarm3.hour, Alarm3.min,Alarm3.sec);
kolive360 2:ceffe5bd46e9 372 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 373 lcd.printf("Alar3:%02d/%02d/%04d",Alarm3.mon,Alarm3.date,Alarm3.year);
kolive360 2:ceffe5bd46e9 374 wait(0.1);
kolive360 2:ceffe5bd46e9 375 }
kolive360 2:ceffe5bd46e9 376 if(visual==4){//Visualiza alarma4
kolive360 2:ceffe5bd46e9 377 lcd.cls();
kolive360 2:ceffe5bd46e9 378 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 379 lcd.printf(" Ver %02d:%02d:%02d", Alarm4.hour, Alarm4.min,Alarm4.sec);
kolive360 2:ceffe5bd46e9 380 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 381 lcd.printf("Alar4:%02d/%02d/%04d",Alarm4.mon,Alarm4.date,Alarm4.year);
kolive360 2:ceffe5bd46e9 382 wait(0.1);
kolive360 2:ceffe5bd46e9 383 }
kolive360 2:ceffe5bd46e9 384
kolive360 2:ceffe5bd46e9 385 if (button_enco.falling()){
kolive360 2:ceffe5bd46e9 386 Lugar=1;
kolive360 2:ceffe5bd46e9 387 }
kolive360 2:ceffe5bd46e9 388 //Activacion Alarma1
kolive360 2:ceffe5bd46e9 389 if((tm.date==Alarm.date)&&(tm.mon==Alarm.mon)&&(tm.year==Alarm.year)&&(tm.hour==Alarm.hour)&&(tm.min==Alarm.min)&&(tm.sec==Alarm.sec))
Jepalacioh 0:c2ed510ee88d 390 {
Jepalacioh 0:c2ed510ee88d 391 Lugar++;
Jepalacioh 0:c2ed510ee88d 392 lcd.cls();
Jepalacioh 0:c2ed510ee88d 393 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 394 lcd.printf("Alarma1 Activa!!");
kolive360 2:ceffe5bd46e9 395 led1 =0;
kolive360 2:ceffe5bd46e9 396 wait(.2);
kolive360 2:ceffe5bd46e9 397 led1 =1;
kolive360 2:ceffe5bd46e9 398 wait(.2);
kolive360 2:ceffe5bd46e9 399 led1 =0;
kolive360 2:ceffe5bd46e9 400 wait(.2);
kolive360 2:ceffe5bd46e9 401 led1 =1;
kolive360 2:ceffe5bd46e9 402 wait(.2);
kolive360 2:ceffe5bd46e9 403 led1 =0;
Jepalacioh 0:c2ed510ee88d 404 lcd.locate(0,0);
Jepalacioh 0:c2ed510ee88d 405 lcd.printf("->Desactivar ");
Jepalacioh 0:c2ed510ee88d 406 lcd.locate(0,1);
Jepalacioh 0:c2ed510ee88d 407 lcd.printf("--Aplazar ");
Jepalacioh 0:c2ed510ee88d 408 m=0;
kolive360 2:ceffe5bd46e9 409 k=1;
kolive360 2:ceffe5bd46e9 410 }
kolive360 2:ceffe5bd46e9 411
kolive360 2:ceffe5bd46e9 412 //Activacion Alarma2
kolive360 2:ceffe5bd46e9 413 if((tm.date==Alarm2.date)&&(tm.mon==Alarm2.mon)&&(tm.year==Alarm2.year)&&(tm.hour==Alarm2.hour)&&(tm.min==Alarm2.min)&&(tm.sec==Alarm2.sec))
kolive360 2:ceffe5bd46e9 414 {
kolive360 2:ceffe5bd46e9 415 Lugar++;
kolive360 2:ceffe5bd46e9 416 lcd.cls();
kolive360 2:ceffe5bd46e9 417 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 418 lcd.printf("Alarma2 Activa!!");
kolive360 2:ceffe5bd46e9 419 led2 =0;
kolive360 2:ceffe5bd46e9 420 wait(.2);
kolive360 2:ceffe5bd46e9 421 led2 =1;
kolive360 2:ceffe5bd46e9 422 wait(.2);
kolive360 2:ceffe5bd46e9 423 led2 =0;
kolive360 2:ceffe5bd46e9 424 wait(.2);
kolive360 2:ceffe5bd46e9 425 led2 =1;
kolive360 2:ceffe5bd46e9 426 wait(.2);
kolive360 2:ceffe5bd46e9 427 led2 =0;
kolive360 2:ceffe5bd46e9 428 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 429 lcd.printf("->Desactivar ");
kolive360 2:ceffe5bd46e9 430 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 431 lcd.printf("--Aplazar ");
kolive360 2:ceffe5bd46e9 432 m=0;
kolive360 2:ceffe5bd46e9 433 k=2;
kolive360 2:ceffe5bd46e9 434 }
kolive360 2:ceffe5bd46e9 435
kolive360 2:ceffe5bd46e9 436 //Activacion Alarma3
kolive360 2:ceffe5bd46e9 437 if((tm.date==Alarm3.date)&&(tm.mon==Alarm3.mon)&&(tm.year==Alarm3.year)&&(tm.hour==Alarm3.hour)&&(tm.min==Alarm3.min)&&(tm.sec==Alarm3.sec))
kolive360 2:ceffe5bd46e9 438 {
kolive360 2:ceffe5bd46e9 439 Lugar++;
kolive360 2:ceffe5bd46e9 440 lcd.cls();
kolive360 2:ceffe5bd46e9 441 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 442 lcd.printf("Alarma3 Activa!!");
kolive360 2:ceffe5bd46e9 443 led3 =0;
kolive360 2:ceffe5bd46e9 444 wait(.2);
kolive360 2:ceffe5bd46e9 445 led3 =1;
kolive360 2:ceffe5bd46e9 446 wait(.2);
kolive360 2:ceffe5bd46e9 447 led3 =0;
kolive360 2:ceffe5bd46e9 448 wait(.2);
kolive360 2:ceffe5bd46e9 449 led3 =1;
kolive360 2:ceffe5bd46e9 450 wait(.2);
kolive360 2:ceffe5bd46e9 451 led3 =0;
kolive360 2:ceffe5bd46e9 452 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 453 lcd.printf("->Desactivar ");
kolive360 2:ceffe5bd46e9 454 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 455 lcd.printf("--Aplazar ");
kolive360 2:ceffe5bd46e9 456 m=0;
kolive360 2:ceffe5bd46e9 457 k=3;
kolive360 2:ceffe5bd46e9 458 }
kolive360 2:ceffe5bd46e9 459 //Activacion Alarma4
kolive360 2:ceffe5bd46e9 460 if((tm.date==Alarm4.date)&&(tm.mon==Alarm4.mon)&&(tm.year==Alarm4.year)&&(tm.hour==Alarm4.hour)&&(tm.min==Alarm4.min)&&(tm.sec==Alarm4.sec))
kolive360 2:ceffe5bd46e9 461 {
kolive360 2:ceffe5bd46e9 462 Lugar++;
kolive360 2:ceffe5bd46e9 463 lcd.cls();
kolive360 2:ceffe5bd46e9 464 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 465 lcd.printf("Alarma1 Activa!!");
kolive360 2:ceffe5bd46e9 466 led4 =0;
kolive360 2:ceffe5bd46e9 467 wait(.2);
kolive360 2:ceffe5bd46e9 468 led4 =1;
kolive360 2:ceffe5bd46e9 469 wait(.2);
kolive360 2:ceffe5bd46e9 470 led4 =0;
kolive360 2:ceffe5bd46e9 471 wait(.2);
kolive360 2:ceffe5bd46e9 472 led4 =1;
kolive360 2:ceffe5bd46e9 473 wait(.2);
kolive360 2:ceffe5bd46e9 474 led4 =0;
kolive360 2:ceffe5bd46e9 475 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 476 lcd.printf("->Desactivar ");
kolive360 2:ceffe5bd46e9 477 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 478 lcd.printf("--Aplazar ");
kolive360 2:ceffe5bd46e9 479 m=0;
kolive360 2:ceffe5bd46e9 480 k=4;
Jepalacioh 0:c2ed510ee88d 481 }
Jepalacioh 0:c2ed510ee88d 482
Jepalacioh 0:c2ed510ee88d 483 break;
Jepalacioh 0:c2ed510ee88d 484
kolive360 2:ceffe5bd46e9 485
kolive360 2:ceffe5bd46e9 486
kolive360 2:ceffe5bd46e9 487
kolive360 2:ceffe5bd46e9 488 case 3://Aplazar Desactivar Alarma
Jepalacioh 0:c2ed510ee88d 489
kolive360 2:ceffe5bd46e9 490 if(alarma==0){
Jepalacioh 0:c2ed510ee88d 491 Sonido.write(0.5);
Jepalacioh 0:c2ed510ee88d 492 wait(0.2);
Jepalacioh 0:c2ed510ee88d 493 Sonido.write(0);
Jepalacioh 0:c2ed510ee88d 494 wait(0.2);
Jepalacioh 0:c2ed510ee88d 495 Sonido.write(0.5);
Jepalacioh 0:c2ed510ee88d 496 wait(0.2);
Jepalacioh 0:c2ed510ee88d 497 Sonido.write(0);
Jepalacioh 0:c2ed510ee88d 498 wait(0.2);
Jepalacioh 0:c2ed510ee88d 499 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 500 if(m!=0){
Jepalacioh 0:c2ed510ee88d 501 alarma=1;
Jepalacioh 0:c2ed510ee88d 502 m=0;
Jepalacioh 0:c2ed510ee88d 503 wheel.reset();
Jepalacioh 0:c2ed510ee88d 504
Jepalacioh 0:c2ed510ee88d 505 lcd.locate(1,0);
Jepalacioh 0:c2ed510ee88d 506 lcd.printf("-");
Jepalacioh 0:c2ed510ee88d 507 lcd.locate(1,1);
Jepalacioh 0:c2ed510ee88d 508 lcd.printf(">");
Jepalacioh 0:c2ed510ee88d 509 }
Jepalacioh 0:c2ed510ee88d 510 }
Jepalacioh 0:c2ed510ee88d 511
Jepalacioh 0:c2ed510ee88d 512 ///////////////////
Jepalacioh 0:c2ed510ee88d 513
kolive360 2:ceffe5bd46e9 514 if(alarma==1){
Jepalacioh 0:c2ed510ee88d 515 Sonido.write(0.5);
Jepalacioh 0:c2ed510ee88d 516 wait(0.2);
Jepalacioh 0:c2ed510ee88d 517 Sonido.write(0);
Jepalacioh 0:c2ed510ee88d 518 wait(0.2);
Jepalacioh 0:c2ed510ee88d 519 Sonido.write(0.5);
Jepalacioh 0:c2ed510ee88d 520 wait(0.2);
Jepalacioh 0:c2ed510ee88d 521 Sonido.write(0);
Jepalacioh 0:c2ed510ee88d 522 wait(0.2);
Jepalacioh 0:c2ed510ee88d 523
Jepalacioh 0:c2ed510ee88d 524 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 525 if(m!=0){
Jepalacioh 0:c2ed510ee88d 526 alarma=0;
Jepalacioh 0:c2ed510ee88d 527 m=0;
Jepalacioh 0:c2ed510ee88d 528 wheel.reset();
Jepalacioh 0:c2ed510ee88d 529
Jepalacioh 0:c2ed510ee88d 530 lcd.locate(1,0);
Jepalacioh 0:c2ed510ee88d 531 lcd.printf(">");
Jepalacioh 0:c2ed510ee88d 532 lcd.locate(1,1);
Jepalacioh 0:c2ed510ee88d 533 lcd.printf("-");
Jepalacioh 0:c2ed510ee88d 534 }
Jepalacioh 0:c2ed510ee88d 535 }
Jepalacioh 0:c2ed510ee88d 536
kolive360 2:ceffe5bd46e9 537 if (button_enco.falling()){
kolive360 2:ceffe5bd46e9 538 if(alarma==0){
Jepalacioh 0:c2ed510ee88d 539 Lugar=0;
Jepalacioh 0:c2ed510ee88d 540 wheel.reset();
Jepalacioh 0:c2ed510ee88d 541 m=0;
Jepalacioh 0:c2ed510ee88d 542 Sonido.write(0);
Jepalacioh 0:c2ed510ee88d 543 lcd.cls();
kolive360 2:ceffe5bd46e9 544 rtc.getTime(tm); //lee el tiempo del DS1307
Jepalacioh 0:c2ed510ee88d 545 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 546 lcd.printf("%02:",tm.hour);
kolive360 2:ceffe5bd46e9 547 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 548 lcd.printf("-C.Alar -C.Hora");
Jepalacioh 0:c2ed510ee88d 549
Jepalacioh 0:c2ed510ee88d 550 }
kolive360 2:ceffe5bd46e9 551 if(alarma==1){
Jepalacioh 0:c2ed510ee88d 552 Lugar=2;
Jepalacioh 0:c2ed510ee88d 553 rtc.getTime(tm);
kolive360 2:ceffe5bd46e9 554
kolive360 2:ceffe5bd46e9 555 switch(k){
kolive360 2:ceffe5bd46e9 556 case 1:
kolive360 2:ceffe5bd46e9 557 if(tm.min!=58){
kolive360 2:ceffe5bd46e9 558 Alarm.min=tm.min+1;
kolive360 2:ceffe5bd46e9 559 }
kolive360 2:ceffe5bd46e9 560 if(tm.min==59){
kolive360 2:ceffe5bd46e9 561 Alarm.min=0;
kolive360 2:ceffe5bd46e9 562 Alarm.hour=tm.hour+1;
kolive360 2:ceffe5bd46e9 563 }
kolive360 2:ceffe5bd46e9 564 Alarm.sec=tm.sec;
kolive360 2:ceffe5bd46e9 565 led1 =1;
kolive360 2:ceffe5bd46e9 566 lcd.cls();
kolive360 2:ceffe5bd46e9 567 alarma=0;
kolive360 2:ceffe5bd46e9 568 break;
kolive360 2:ceffe5bd46e9 569
kolive360 2:ceffe5bd46e9 570 case 2:
kolive360 2:ceffe5bd46e9 571 if(tm.min!=58){
kolive360 2:ceffe5bd46e9 572 Alarm2.min=tm.min+1;
kolive360 2:ceffe5bd46e9 573 }
kolive360 2:ceffe5bd46e9 574 if(tm.min==59){
kolive360 2:ceffe5bd46e9 575 Alarm2.min=0;
kolive360 2:ceffe5bd46e9 576 Alarm2.hour=tm.hour+1;
kolive360 2:ceffe5bd46e9 577 }
kolive360 2:ceffe5bd46e9 578 Alarm2.sec=tm.sec;
kolive360 2:ceffe5bd46e9 579 led2 =1;
kolive360 2:ceffe5bd46e9 580 lcd.cls();
kolive360 2:ceffe5bd46e9 581 alarma=0;
kolive360 2:ceffe5bd46e9 582 break;
kolive360 2:ceffe5bd46e9 583
kolive360 2:ceffe5bd46e9 584 case 3:
kolive360 2:ceffe5bd46e9 585 if(tm.min!=58){
kolive360 2:ceffe5bd46e9 586 Alarm3.min=tm.min+1;
kolive360 2:ceffe5bd46e9 587 }
kolive360 2:ceffe5bd46e9 588 if(tm.min==59){
kolive360 2:ceffe5bd46e9 589 Alarm3.min=0;
kolive360 2:ceffe5bd46e9 590 Alarm3.hour=tm.hour+1;
kolive360 2:ceffe5bd46e9 591 }
kolive360 2:ceffe5bd46e9 592 Alarm3.sec=tm.sec;
kolive360 2:ceffe5bd46e9 593 led3 =1;
kolive360 2:ceffe5bd46e9 594 lcd.cls();
kolive360 2:ceffe5bd46e9 595 alarma=0;
kolive360 2:ceffe5bd46e9 596 break;
kolive360 2:ceffe5bd46e9 597
kolive360 2:ceffe5bd46e9 598 case 4:
kolive360 2:ceffe5bd46e9 599 if(tm.min!=58){
kolive360 2:ceffe5bd46e9 600 Alarm4.min=tm.min+1;
kolive360 2:ceffe5bd46e9 601 }
kolive360 2:ceffe5bd46e9 602 if(tm.min==59){
kolive360 2:ceffe5bd46e9 603 Alarm4.min=0;
kolive360 2:ceffe5bd46e9 604 Alarm4.hour=tm.hour+1;
kolive360 2:ceffe5bd46e9 605 }
kolive360 2:ceffe5bd46e9 606 Alarm4.sec=tm.sec;
kolive360 2:ceffe5bd46e9 607 led4 =1;
kolive360 2:ceffe5bd46e9 608 lcd.cls();
kolive360 2:ceffe5bd46e9 609 alarma=0;
kolive360 2:ceffe5bd46e9 610 break;
Jepalacioh 0:c2ed510ee88d 611 }
Jepalacioh 0:c2ed510ee88d 612 }
Jepalacioh 0:c2ed510ee88d 613
Jepalacioh 0:c2ed510ee88d 614 }
Jepalacioh 0:c2ed510ee88d 615
Jepalacioh 0:c2ed510ee88d 616
Jepalacioh 0:c2ed510ee88d 617 break;
Jepalacioh 0:c2ed510ee88d 618 }
kolive360 2:ceffe5bd46e9 619
kolive360 2:ceffe5bd46e9 620 }
kolive360 2:ceffe5bd46e9 621 // Lazo de Config Alarmas
kolive360 2:ceffe5bd46e9 622 lazo: int t=0;
kolive360 2:ceffe5bd46e9 623 numero=1;
kolive360 2:ceffe5bd46e9 624 while(t==0){
kolive360 2:ceffe5bd46e9 625 m=wheel.getPulses();
kolive360 2:ceffe5bd46e9 626 lcd.locate(0,0);
kolive360 2:ceffe5bd46e9 627 lcd.printf("Config Alarma %02d",numero);
kolive360 2:ceffe5bd46e9 628 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 629 lcd.printf("-1 -2 -3 -4",tm.date);
kolive360 2:ceffe5bd46e9 630 if (m!=0){
kolive360 2:ceffe5bd46e9 631 numero=numero+m;
kolive360 2:ceffe5bd46e9 632 if(numero<1){
kolive360 2:ceffe5bd46e9 633 numero=1;
kolive360 2:ceffe5bd46e9 634 }
kolive360 2:ceffe5bd46e9 635 if(numero>4){
kolive360 2:ceffe5bd46e9 636 numero=4;
kolive360 2:ceffe5bd46e9 637 }
kolive360 2:ceffe5bd46e9 638 wheel.reset();
kolive360 2:ceffe5bd46e9 639 m=0;
kolive360 2:ceffe5bd46e9 640 }
kolive360 2:ceffe5bd46e9 641 if(numero==1){
kolive360 2:ceffe5bd46e9 642 led1 =1;
kolive360 2:ceffe5bd46e9 643 led2 =0;
kolive360 2:ceffe5bd46e9 644 led3 =0;
kolive360 2:ceffe5bd46e9 645 led4 =0;
kolive360 2:ceffe5bd46e9 646 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 647 lcd.printf(">");
kolive360 2:ceffe5bd46e9 648 lcd.locate(4,1);
kolive360 2:ceffe5bd46e9 649 lcd.printf("-");
kolive360 2:ceffe5bd46e9 650 lcd.locate(9,1);
kolive360 2:ceffe5bd46e9 651 lcd.printf("-");
kolive360 2:ceffe5bd46e9 652 lcd.locate(13,1);
kolive360 2:ceffe5bd46e9 653 lcd.printf("-");
kolive360 2:ceffe5bd46e9 654 wait(0.1);
kolive360 2:ceffe5bd46e9 655 }
kolive360 2:ceffe5bd46e9 656 if(numero==2){
kolive360 2:ceffe5bd46e9 657 led1 =0;
kolive360 2:ceffe5bd46e9 658 led2 =1;
kolive360 2:ceffe5bd46e9 659 led3 =0;
kolive360 2:ceffe5bd46e9 660 led4 =0;
kolive360 2:ceffe5bd46e9 661 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 662 lcd.printf("-");
kolive360 2:ceffe5bd46e9 663 lcd.locate(4,1);
kolive360 2:ceffe5bd46e9 664 lcd.printf(">");
kolive360 2:ceffe5bd46e9 665 lcd.locate(9,1);
kolive360 2:ceffe5bd46e9 666 lcd.printf("-");
kolive360 2:ceffe5bd46e9 667 lcd.locate(13,1);
kolive360 2:ceffe5bd46e9 668 lcd.printf("-");
kolive360 2:ceffe5bd46e9 669 wait(0.1);
kolive360 2:ceffe5bd46e9 670 }
kolive360 2:ceffe5bd46e9 671 if(numero==3){
kolive360 2:ceffe5bd46e9 672 led1 =0;
kolive360 2:ceffe5bd46e9 673 led2 =0;
kolive360 2:ceffe5bd46e9 674 led3 =1;
kolive360 2:ceffe5bd46e9 675 led4 =0;
kolive360 2:ceffe5bd46e9 676 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 677 lcd.printf("-");
kolive360 2:ceffe5bd46e9 678 lcd.locate(4,1);
kolive360 2:ceffe5bd46e9 679 lcd.printf("-");
kolive360 2:ceffe5bd46e9 680 lcd.locate(9,1);
kolive360 2:ceffe5bd46e9 681 lcd.printf(">");
kolive360 2:ceffe5bd46e9 682 lcd.locate(13,1);
kolive360 2:ceffe5bd46e9 683 lcd.printf("-");
kolive360 2:ceffe5bd46e9 684 wait(0.1);
kolive360 2:ceffe5bd46e9 685 }
kolive360 2:ceffe5bd46e9 686 if(numero==4){
kolive360 2:ceffe5bd46e9 687 led1 =0;
kolive360 2:ceffe5bd46e9 688 led2 =0;
kolive360 2:ceffe5bd46e9 689 led3 =0;
kolive360 2:ceffe5bd46e9 690 led4 =1;
kolive360 2:ceffe5bd46e9 691 lcd.locate(0,1);
kolive360 2:ceffe5bd46e9 692 lcd.printf("-");
kolive360 2:ceffe5bd46e9 693 lcd.locate(4,1);
kolive360 2:ceffe5bd46e9 694 lcd.printf("-");
kolive360 2:ceffe5bd46e9 695 lcd.locate(9,1);
kolive360 2:ceffe5bd46e9 696 lcd.printf("-");
kolive360 2:ceffe5bd46e9 697 lcd.locate(13,1);
kolive360 2:ceffe5bd46e9 698 lcd.printf(">");
kolive360 2:ceffe5bd46e9 699 wait(0.1);
kolive360 2:ceffe5bd46e9 700 }
kolive360 2:ceffe5bd46e9 701
kolive360 2:ceffe5bd46e9 702 if (button_enco.falling()){
kolive360 2:ceffe5bd46e9 703 m=0;
kolive360 2:ceffe5bd46e9 704 lcd.cls();
kolive360 2:ceffe5bd46e9 705 lcd.locate(4,0);
kolive360 2:ceffe5bd46e9 706 lcd.printf("Alarma %02d ",numero);
kolive360 2:ceffe5bd46e9 707 lcd.locate(2,1);
kolive360 2:ceffe5bd46e9 708 lcd.printf("Seleccionada");
kolive360 2:ceffe5bd46e9 709 wait(1.5);
kolive360 2:ceffe5bd46e9 710 lcd.cls();
kolive360 2:ceffe5bd46e9 711 t=1;
kolive360 2:ceffe5bd46e9 712 }
kolive360 2:ceffe5bd46e9 713 }
kolive360 2:ceffe5bd46e9 714 goto sigo;
kolive360 2:ceffe5bd46e9 715
kolive360 2:ceffe5bd46e9 716 }
kolive360 2:ceffe5bd46e9 717