Reloj, se programan 7 alarmas para los días de la semana y se enciende y se apaga un aire acondicionado a determinada hora del día.
Dependencies: Debounced QEI RTC-DS1307 TextLCD mbed
main.cpp@0:fdeda656e0e6, 2017-11-30 (annotated)
- Committer:
- PROCESADORES_2017_2
- Date:
- Thu Nov 30 14:03:05 2017 +0000
- Revision:
- 0:fdeda656e0e6
Reloj, se programan 7 alarmas para los d?as de la semana y se enciende y se apaga un aire acondicionado a determinada hora del d?a.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 1 | #include "mbed.h" |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 2 | #include "DebouncedIn.h" |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 3 | #include "TextLCD.h" |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 4 | #include "QEI.h" |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 5 | #include "Rtc_Ds1307.h" |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 6 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 7 | Rtc_Ds1307 rtc(PTE0, PTE1);//SCL,SDA |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 8 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 9 | TextLCD lcd(PTB8, PTB9,PTB10,PTB11,PTE2, PTE3); //Puertos LCD rs, e, d4, d5, d6, d7 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 10 | QEI wheel(PTA1, PTA2, NC, 48); //Puertos de la tarjeta asignados para el Encoder |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 11 | DebouncedIn button_enco(PTC17); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 12 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 13 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 14 | DigitalOut led1(LED1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 15 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 16 | DigitalOut led2(PTC0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 17 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 18 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 19 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 20 | DigitalOut led(PTE31);//al transistor del led infrarrojo pin |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 21 | int i2,j; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 22 | int t=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 23 | int H; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 24 | int L; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 25 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 26 | float periodo; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 27 | float Frecuencia=4000; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 28 | int C1=0x0C; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 29 | int m,k,x1,x2,x3,x4,x5,x6,x7; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 30 | int numero=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 31 | int Conf=0; // 0: Alarmas y 1:Reloj |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 32 | int Lugar=0; // Definen el punto en el cual va el programa |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 33 | int i=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 34 | int visual=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 35 | int alarma=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 36 | int code[65]; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 37 | int cabeceraL=9000; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 38 | int cabeceraH=4555; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 39 | int Tdescanso=500; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 40 | int Tlow=630; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 41 | int Thigh=1750; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 42 | int numb = 33; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 43 | int duracion; //duracion de un pulso bajo |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 44 | void pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 45 | int descanso(int duracion); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 46 | int sendcode(int numb, int *code, int cabeceraL, int cabeceraH, int Tdescanso, int Tlow, int Thigh); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 47 | const unsigned pwrHY[]={575,548,548,575,549,549,575,548,1686,1686,1686,1687,1685,1687,549,1686, |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 48 | 1686,1686,576,548,549,576,549,549,576,549,1687,1687,1686,1686,1687,1686}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 49 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 50 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 51 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 52 | int main() |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 53 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 54 | Rtc_Ds1307::Time_rtc tm = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 55 | Rtc_Ds1307::Time_rtc Alarm = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 56 | Rtc_Ds1307::Time_rtc Alarm2 = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 57 | Rtc_Ds1307::Time_rtc Alarm3 = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 58 | Rtc_Ds1307::Time_rtc Alarm4 = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 59 | Rtc_Ds1307::Time_rtc Alarm5 = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 60 | Rtc_Ds1307::Time_rtc Alarm6 = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 61 | Rtc_Ds1307::Time_rtc Alarm7 = {}; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 62 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 63 | lcd.writeCommand(C1);//escribimos un comando segun el manual del modulo LCD |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 64 | led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 65 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 66 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 67 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 68 | while(1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 69 | switch (Lugar){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 70 | case 0: //Menu principal |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 71 | rtc.getTime(tm); //lee el tiempo del DS1307 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 72 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 73 | lcd.printf("%02d:%02d %02d/%02d/%02d", tm.hour, tm.min, tm.date, tm.mon, tm.year); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 74 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 75 | lcd.printf("-Alarmas Setup"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 76 | m=wheel.getPulses(); // m es el valor del encoder |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 77 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 78 | if(m!=0 && Conf==0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 79 | Conf=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 80 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 81 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 82 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 83 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 84 | if(m!=0 && Conf==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 85 | Conf=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 86 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 87 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 88 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 89 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 90 | if(Conf==0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 91 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 92 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 93 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 94 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 95 | //lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 96 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 97 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 98 | if(Conf==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 99 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 100 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 101 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 102 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 103 | //lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 104 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 105 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 106 | if (button_enco.falling()){ //si se pulsa boton encoder |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 107 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 108 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 109 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 110 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 111 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 112 | case 1://Configurar |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 113 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 114 | switch(i){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 115 | case 0: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 116 | if(Conf==0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 117 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 118 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 119 | lcd.printf("Config. Alarma "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 120 | wait(1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 121 | goto lazo; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 122 | sigo: i++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 123 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 124 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 125 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 126 | lcd.printf("Dia: "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 127 | tm.date=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 128 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 129 | if(Conf==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 130 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 131 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 132 | lcd.printf("Config. hora "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 133 | wait(1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 134 | i++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 135 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 136 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 137 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 138 | lcd.printf("Dia: "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 139 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 140 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 141 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 142 | case 1: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 143 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 144 | if (m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 145 | tm.date=tm.date+m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 146 | if(tm.date>31){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 147 | tm.date=31; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 148 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 149 | if(tm.date<1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 150 | tm.date=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 151 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 152 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 153 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 154 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 155 | lcd.locate(5,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 156 | lcd.printf("%02d",tm.date); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 157 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 158 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 159 | i++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 160 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 161 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 162 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 163 | lcd.printf("Mes: "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 164 | //tm.mon=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 165 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 166 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 167 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 168 | case 2: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 169 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 170 | if (m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 171 | tm.mon=tm.mon+m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 172 | if(tm.mon>12){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 173 | tm.mon=12; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 174 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 175 | if(tm.mon<1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 176 | tm.mon=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 177 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 178 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 179 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 180 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 181 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 182 | lcd.locate(5,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 183 | lcd.printf("%02d",tm.mon); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 184 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 185 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 186 | i++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 187 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 188 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 189 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 190 | lcd.printf("Year: "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 191 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 192 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 193 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 194 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 195 | case 3: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 196 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 197 | if (m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 198 | tm.year=tm.year+m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 199 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 200 | if(tm.year<2016){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 201 | tm.year=2016; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 202 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 203 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 204 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 205 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 206 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 207 | lcd.locate(6,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 208 | lcd.printf("%02d",tm.year); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 209 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 210 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 211 | i++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 212 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 213 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 214 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 215 | lcd.printf("Hora: "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 216 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 217 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 218 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 219 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 220 | case 4: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 221 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 222 | if (m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 223 | tm.hour=tm.hour + m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 224 | if(tm.hour>23){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 225 | tm.hour=23; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 226 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 227 | if(tm.hour<0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 228 | tm.hour=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 229 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 230 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 231 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 232 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 233 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 234 | lcd.locate(6,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 235 | lcd.printf("%02d",tm.hour); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 236 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 237 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 238 | i++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 239 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 240 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 241 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 242 | lcd.printf("Minuto: "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 243 | //tm.min=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 244 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 245 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 246 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 247 | case 5: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 248 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 249 | if (m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 250 | tm.min=tm.min+m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 251 | if(tm.min>59){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 252 | tm.min=59; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 253 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 254 | if(tm.min<0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 255 | tm.min=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 256 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 257 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 258 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 259 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 260 | lcd.locate(8,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 261 | lcd.printf("%02d",tm.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 262 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 263 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 264 | i++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 265 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 266 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 267 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 268 | lcd.printf("dia semana: "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 269 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 270 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 271 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 272 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 273 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 274 | case 6: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 275 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 276 | if (m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 277 | tm.wday=tm.wday+m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 278 | if(tm.wday>7){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 279 | tm.wday=7; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 280 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 281 | if(tm.wday<0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 282 | tm.wday=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 283 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 284 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 285 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 286 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 287 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 288 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 289 | lcd.printf("%02d",tm.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 290 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 291 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 292 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 293 | /////////////////// |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 294 | if(Conf==0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 295 | if(numero ==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 296 | Alarm=tm; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 297 | x1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 298 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 299 | if(numero ==2){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 300 | Alarm2=tm; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 301 | x2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 302 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 303 | if(numero ==3){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 304 | Alarm3=tm; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 305 | x3=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 306 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 307 | if(numero ==4){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 308 | Alarm4=tm; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 309 | x4=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 310 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 311 | if(numero ==5){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 312 | Alarm5=tm; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 313 | x5=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 314 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 315 | if(numero ==6){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 316 | Alarm6=tm; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 317 | x6=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 318 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 319 | if(numero ==7){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 320 | Alarm7=tm; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 321 | x7=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 322 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 323 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 324 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 325 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 326 | lcd.printf("Alarma %02d config",numero); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 327 | wait(1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 328 | i=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 329 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 330 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 331 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 332 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 333 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 334 | if(Conf==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 335 | rtc.setTime(tm, false, false); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 336 | rtc.startClock(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 337 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 338 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 339 | lcd.printf("Hora Config. "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 340 | wait(1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 341 | i=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 342 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 343 | Lugar=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 344 | rtc.getTime(tm); //lee el tiempo del DS1307 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 345 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 346 | lcd.printf("%02:",tm.hour); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 347 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 348 | lcd.printf("-Alarmas -Set up"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 349 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 350 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 351 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 352 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 353 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 354 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 355 | case 2: //Visualizar y Activacion Alarmas |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 356 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 357 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 358 | if(x1==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 359 | led2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 360 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 361 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 362 | if(x2==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 363 | led2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 364 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 365 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 366 | if(x3==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 367 | led2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 368 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 369 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 370 | if(x4==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 371 | led2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 372 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 373 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 374 | if(x5==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 375 | led2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 376 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 377 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 378 | if(x6==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 379 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 380 | led2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 381 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 382 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 383 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 384 | if(x7==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 385 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 386 | led2=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 387 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 388 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 389 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 390 | if(m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 391 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 392 | visual=visual+m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 393 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 394 | if(visual<0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 395 | visual=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 396 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 397 | if(visual>7){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 398 | visual=7; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 399 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 400 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 401 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 402 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 403 | //Visualizacion de la hora |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 404 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 405 | if(visual==0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 406 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 407 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 408 | lcd.printf(" Hora %02d:%02d",tm.hour,tm.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 409 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 410 | lcd.printf("%02d/%02d/%s",tm.mon,tm.date,rtc.weekdayToString(tm.wday)); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 411 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 412 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 413 | //Visualilzacion de la alarma 1 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 414 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 415 | if(visual==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 416 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 417 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 418 | lcd.printf(" Ver %02d:%02d", Alarm.hour,Alarm.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 419 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 420 | lcd.printf("Alar1:%02d/%02d/%03d",Alarm.mon,Alarm.date,Alarm.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 421 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 422 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 423 | //Visualilzacion de la alarma 2 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 424 | if(visual==2){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 425 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 426 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 427 | lcd.printf(" Ver %02d:%02d", Alarm2.hour, Alarm2.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 428 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 429 | lcd.printf("Alar2:%02d/%02d/%03d",Alarm2.mon,Alarm2.date,Alarm2.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 430 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 431 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 432 | //Visualilzacion de la alarma 3 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 433 | if(visual==3){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 434 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 435 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 436 | lcd.printf(" Ver %02d:%02d", Alarm3.hour, Alarm3.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 437 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 438 | lcd.printf("Alar3:%02d/%02d/%03d",Alarm3.mon,Alarm3.date,Alarm3.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 439 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 440 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 441 | //Visualilzacion de la alarma 4 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 442 | if(visual==4){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 443 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 444 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 445 | lcd.printf(" Ver %02d:%02d", Alarm4.hour, Alarm4.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 446 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 447 | lcd.printf("Alar4:%02d/%02d/%03d",Alarm4.mon,Alarm4.date,Alarm4.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 448 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 449 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 450 | //Visualilzacion de la alarma 5 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 451 | if(visual==5){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 452 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 453 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 454 | lcd.printf(" Ver %02d:%02d", Alarm5.hour, Alarm5.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 455 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 456 | lcd.printf("Alar5:%02d/%02d/%03d",Alarm5.mon,Alarm5.date,Alarm5.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 457 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 458 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 459 | //Visualilzacion de la alarma 6 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 460 | if(visual==6){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 461 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 462 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 463 | lcd.printf(" Ver %02d:%02d", Alarm6.hour, Alarm6.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 464 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 465 | lcd.printf("Alar6:%02d/%02d/%03d",Alarm6.mon,Alarm6.date,Alarm6.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 466 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 467 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 468 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 469 | //Visualilzacion de la alarma 7 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 470 | if(visual==7){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 471 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 472 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 473 | lcd.printf(" Ver %02d:%02d", Alarm7.hour, Alarm7.min); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 474 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 475 | lcd.printf("Alar7:%02d/%02d/%03d",Alarm7.mon,Alarm7.date,Alarm7.wday); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 476 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 477 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 478 | //PARA CONFIGURAR OTRA ALARMA: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 479 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 480 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 481 | Lugar=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 482 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 483 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 484 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 485 | //Activacion Alarma1 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 486 | if((tm.date==Alarm.date)&&(tm.mon==Alarm.mon)&&(tm.hour==Alarm.hour)&&(tm.min==Alarm.min)&&(tm.wday==Alarm.wday)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 487 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 488 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 489 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 490 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 491 | lcd.printf("Alarma 1: Activa!!"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 492 | led1=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 493 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 494 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 495 | k=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 496 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 497 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 498 | //Activacion Alarma2 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 499 | if((tm.date==Alarm2.date)&&(tm.mon==Alarm2.mon)&&(tm.hour==Alarm2.hour)&&(tm.min==Alarm2.min)&&(tm.wday==Alarm2.wday)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 500 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 501 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 502 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 503 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 504 | lcd.printf("Alarma 2: Activa!!"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 505 | led1=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 506 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 507 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 508 | k=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 509 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 510 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 511 | //Activacion Alarma3 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 512 | if((tm.date==Alarm3.date)&&(tm.mon==Alarm3.mon)&&(tm.hour==Alarm3.hour)&&(tm.min==Alarm3.min)&&(tm.wday==Alarm3.wday)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 513 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 514 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 515 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 516 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 517 | lcd.printf("Alarma3: Activa!!"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 518 | led1=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 519 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 520 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 521 | k=3; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 522 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 523 | //Activacion Alarma4 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 524 | if((tm.date==Alarm4.date)&&(tm.mon==Alarm4.mon)&&(tm.hour==Alarm4.hour)&&(tm.min==Alarm4.min)&&(tm.wday==Alarm4.wday)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 525 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 526 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 527 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 528 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 529 | lcd.printf("Alarma 4 :Activa!!"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 530 | led1=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 531 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 532 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 533 | k=4; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 534 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 535 | //Activacion Alarma5 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 536 | if((tm.date==Alarm5.date)&&(tm.mon==Alarm5.mon)&&(tm.hour==Alarm5.hour)&&(tm.min==Alarm5.min)&&(tm.wday==Alarm5.wday)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 537 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 538 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 539 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 540 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 541 | lcd.printf("Alarma 5: Activa!!"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 542 | led1=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 543 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 544 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 545 | k=5; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 546 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 547 | //Activacion Alarma6 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 548 | if((tm.date==Alarm6.date)&&(tm.mon==Alarm6.mon)&&(tm.hour==Alarm6.hour)&&(tm.min==Alarm6.min)&&(tm.wday==Alarm6.wday)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 549 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 550 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 551 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 552 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 553 | lcd.printf("Alarma 6: Activa!!"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 554 | led1=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 555 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 556 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 557 | k=6; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 558 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 559 | //Activacion Alarma7 |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 560 | if((tm.date==Alarm7.date)&&(tm.mon==Alarm7.mon)&&(tm.hour==Alarm7.hour)&&(tm.min==Alarm7.min)&&(tm.wday==Alarm7.wday)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 561 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 562 | Lugar++; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 563 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 564 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 565 | lcd.printf("Alarma 7:Activa!!"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 566 | led1=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 567 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 568 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 569 | k=7; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 570 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 571 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 572 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 573 | case 3: |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 574 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 575 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 576 | lcd.printf(" AIRE ENCENDIDO "); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 577 | //Configura la hora de apagado y los minutos |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 578 | H=9; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 579 | L=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 580 | if (k==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 581 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 582 | if((tm.hour==H)&&(tm.min==L)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 583 | {led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 584 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 585 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 586 | Lugar=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 587 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 588 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 589 | if (k==2){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 590 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 591 | if((tm.hour==H)&&(tm.min==L)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 592 | {led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 593 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 594 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 595 | Lugar=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 596 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 597 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 598 | if (k==3){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 599 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 600 | if((tm.hour==H)&&(tm.min==L)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 601 | {led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 602 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 603 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 604 | Lugar=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 605 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 606 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 607 | if (k==4){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 608 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 609 | if(((tm.hour==H)&&(tm.min==L))) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 610 | {led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 611 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 612 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 613 | Lugar=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 614 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 615 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 616 | if (k==5){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 617 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 618 | if((tm.hour==H)&&(tm.min==L)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 619 | {led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 620 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 621 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 622 | Lugar=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 623 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 624 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 625 | if (k==6){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 626 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 627 | //(tm.min==(Alarm6.min+1)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 628 | if((tm.hour==H)&&(tm.min==L)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 629 | {led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 630 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 631 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 632 | Lugar=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 633 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 634 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 635 | if (k==7){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 636 | rtc.getTime(tm); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 637 | if((tm.hour==H)&&(tm.min==L)) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 638 | {led1=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 639 | pwr(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 640 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 641 | Lugar=2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 642 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 643 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 644 | break; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 645 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 646 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 647 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 648 | // Lazo de Config Alarmas |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 649 | lazo: int t=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 650 | numero=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 651 | while(t==0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 652 | m=wheel.getPulses(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 653 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 654 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 655 | lcd.printf("-1 -2 -3 -4",tm.date); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 656 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 657 | lcd.printf("-5 -6 -7 ",tm.date); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 658 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 659 | if (m!=0){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 660 | numero=numero+m; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 661 | if(numero<1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 662 | numero=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 663 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 664 | if(numero>7){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 665 | numero=7; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 666 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 667 | wheel.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 668 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 669 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 670 | if(numero==1){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 671 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 672 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 673 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 674 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 675 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 676 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 677 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 678 | lcd.locate(13,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 679 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 680 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 681 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 682 | lcd.locate(4,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 683 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 684 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 685 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 686 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 687 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 688 | if(numero==2){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 689 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 690 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 691 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 692 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 693 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 694 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 695 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 696 | lcd.locate(13,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 697 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 698 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 699 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 700 | lcd.locate(4,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 701 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 702 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 703 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 704 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 705 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 706 | if(numero==3){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 707 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 708 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 709 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 710 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 711 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 712 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 713 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 714 | lcd.locate(13,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 715 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 716 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 717 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 718 | lcd.locate(4,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 719 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 720 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 721 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 722 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 723 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 724 | if(numero==4){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 725 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 726 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 727 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 728 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 729 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 730 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 731 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 732 | lcd.locate(13,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 733 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 734 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 735 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 736 | lcd.locate(4,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 737 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 738 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 739 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 740 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 741 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 742 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 743 | if(numero==5){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 744 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 745 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 746 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 747 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 748 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 749 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 750 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 751 | lcd.locate(13,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 752 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 753 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 754 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 755 | lcd.locate(4,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 756 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 757 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 758 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 759 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 760 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 761 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 762 | if(numero==6){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 763 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 764 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 765 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 766 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 767 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 768 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 769 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 770 | lcd.locate(13,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 771 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 772 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 773 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 774 | lcd.locate(4,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 775 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 776 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 777 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 778 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 779 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 780 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 781 | if(numero==7){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 782 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 783 | lcd.locate(0,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 784 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 785 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 786 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 787 | lcd.locate(9,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 788 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 789 | lcd.locate(13,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 790 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 791 | lcd.locate(0,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 792 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 793 | lcd.locate(4,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 794 | lcd.printf("-"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 795 | lcd.locate(9,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 796 | lcd.printf(">"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 797 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 798 | wait(0.1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 799 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 800 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 801 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 802 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 803 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 804 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 805 | if (button_enco.falling()){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 806 | m=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 807 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 808 | lcd.locate(4,0); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 809 | lcd.printf("Alarma %02d ",numero); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 810 | lcd.locate(2,1); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 811 | lcd.printf("Seleccionada"); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 812 | wait(1.5); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 813 | lcd.cls(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 814 | t=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 815 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 816 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 817 | goto sigo; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 818 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 819 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 820 | int descanso(int duracion){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 821 | Timer t2; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 822 | t2.reset(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 823 | t2.start(); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 824 | while(1) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 825 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 826 | led=1; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 827 | wait_us(8); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 828 | led=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 829 | led=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 830 | wait_us(9); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 831 | if(t2.read_us() > duracion) return 0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 832 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 833 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 834 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 835 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 836 | int sendcode(int numb, int *code, int cabeceraL, int cabeceraH, int Tdescanso, int Tlow, int Thigh) |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 837 | { |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 838 | led=0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 839 | wait_ms(100); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 840 | descanso(cabeceraL); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 841 | wait_us(cabeceraH); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 842 | |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 843 | for(i2=0;i2<numb;i2++){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 844 | if (code[i2]>1000){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 845 | descanso(Tdescanso); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 846 | wait_us(Thigh); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 847 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 848 | if (code[i2]<1000){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 849 | descanso(Tdescanso); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 850 | wait_us(Tlow); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 851 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 852 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 853 | descanso(Tdescanso); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 854 | return 0; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 855 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 856 | //********************************************************** |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 857 | void pwr(){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 858 | for(i2=0;i2<numb;i2++){ |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 859 | code[i2]=pwrHY[i2]; |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 860 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 861 | sendcode(numb,code,cabeceraL, cabeceraH, Tdescanso, Tlow, Thigh); |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 862 | } |
PROCESADORES_2017_2 | 0:fdeda656e0e6 | 863 | //**************************** |