ESTE PROGRAMA VA A CONTROLAR LAS VARIABLES DE HUMEDAD Y TEMPERATURA SET POINT POR EL USUARIO A TRAVES DE UNA INTERFAZ
Dependencies: mbed TextLCD Keypad DS1307 DHT11
main.cpp@2:0edb81388d5f, 2020-02-16 (annotated)
- Committer:
- geogarcia
- Date:
- Sun Feb 16 18:25:15 2020 +0000
- Revision:
- 2:0edb81388d5f
- Parent:
- 1:2377110920ce
- Child:
- 3:65184d2ffad8
El proyecto trata de un datalogger de humedad y temperatura con registro en tiempo real, empleando el sensor DHT11, el modulo RTC DS1307, placa STM32M4 Discovery
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
geogarcia | 1:2377110920ce | 1 | ////////////////////////////////// LIBRERIAS DEL PROYECTO///////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 2 | #include "mbed.h"// libreria principal mbed |
geogarcia | 1:2377110920ce | 3 | #include "TextLCD.h"// libreria lcd |
geogarcia | 1:2377110920ce | 4 | #include "Keypad.h"// libreria Keypad |
geogarcia | 1:2377110920ce | 5 | #include "DHT11.h"// libreria sensor de humedad y temperatura |
geogarcia | 2:0edb81388d5f | 6 | //include "clase.h" |
geogarcia | 2:0edb81388d5f | 7 | #include "math.h" |
geogarcia | 2:0edb81388d5f | 8 | #include "ds1307.h" |
geogarcia | 1:2377110920ce | 9 | ////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 10 | ///////////////////////////////// CONFIGURACION DE GPIO //////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 11 | Serial pc(PA_2,PA_3); |
geogarcia | 1:2377110920ce | 12 | DigitalOut myled(PD_13);// configura salida digital y asigna a myled al pin d13 |
geogarcia | 1:2377110920ce | 13 | TextLCD lcd(PB_7,PB_8,PB_15,PB_14,PB_13,PB_12,TextLCD:: LCD16x2);// configuracion de conexion de lcd |
geogarcia | 1:2377110920ce | 14 | Keypad teclado(PC_8,PC_11,PC_7,PC_6,PB_0,PD_6,PD_7,PB_3); |
geogarcia | 1:2377110920ce | 15 | DHT11 dato(PC_5); |
geogarcia | 2:0edb81388d5f | 16 | DS1307 my1307(PB_7,PB_8); |
geogarcia | 2:0edb81388d5f | 17 | Ticker flipper1; |
geogarcia | 2:0edb81388d5f | 18 | Ticker flipper2; |
geogarcia | 1:2377110920ce | 19 | ///////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 20 | ////////////////////////// DECLARACION DE VARIABLES GLOBALES //////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 21 | int rtc=0; |
geogarcia | 2:0edb81388d5f | 22 | int sec=0; |
geogarcia | 2:0edb81388d5f | 23 | int mins=0; |
geogarcia | 2:0edb81388d5f | 24 | int hours=0; |
geogarcia | 2:0edb81388d5f | 25 | int day=0; |
geogarcia | 2:0edb81388d5f | 26 | int date=0; |
geogarcia | 2:0edb81388d5f | 27 | int month=0; |
geogarcia | 2:0edb81388d5f | 28 | int year=0; |
geogarcia | 2:0edb81388d5f | 29 | int muestreo; |
geogarcia | 1:2377110920ce | 30 | int z; |
geogarcia | 1:2377110920ce | 31 | char key; |
geogarcia | 1:2377110920ce | 32 | int released; |
geogarcia | 1:2377110920ce | 33 | int s; // variable usada en rutina sensor |
geogarcia | 1:2377110920ce | 34 | int temp; |
geogarcia | 2:0edb81388d5f | 35 | int temp1; |
geogarcia | 1:2377110920ce | 36 | int hum; |
geogarcia | 2:0edb81388d5f | 37 | int avrtemp; |
geogarcia | 2:0edb81388d5f | 38 | int avrhum; |
geogarcia | 2:0edb81388d5f | 39 | int conteo; |
geogarcia | 2:0edb81388d5f | 40 | //////////////////////////////Declaracion de funciones/////////////////////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 41 | |
geogarcia | 2:0edb81388d5f | 42 | void test_rw(int test); |
geogarcia | 2:0edb81388d5f | 43 | |
geogarcia | 2:0edb81388d5f | 44 | ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 45 | ////////////////////////////////////////// SUB-RUTina lectura DS1307///////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 46 | void lecturads1307(){ |
geogarcia | 2:0edb81388d5f | 47 | // test_rw(my1307.gettime(&sec,&mins,&hours,&day,&date,&month,&year)); |
geogarcia | 2:0edb81388d5f | 48 | my1307.gettime(&sec,&mins,&hours,&day,&date,&month,&year); |
geogarcia | 2:0edb81388d5f | 49 | /*pc.printf("seconds set are %.2D \n\r",sec); |
geogarcia | 2:0edb81388d5f | 50 | pc.printf("minutes set are %.2D\n\r",mins); |
geogarcia | 2:0edb81388d5f | 51 | pc.printf("hours set are %.2D\n\r",hours); |
geogarcia | 2:0edb81388d5f | 52 | pc.printf("day set are %.2D\n\r",day); |
geogarcia | 2:0edb81388d5f | 53 | pc.printf("date set are %.2D\n\r",date); |
geogarcia | 2:0edb81388d5f | 54 | pc.printf("month set are %.2D\n\r",month); |
geogarcia | 2:0edb81388d5f | 55 | pc.printf("year set are %.2D\n\r",year); |
geogarcia | 2:0edb81388d5f | 56 | wait(1);*/ |
geogarcia | 2:0edb81388d5f | 57 | pc.printf("DATE:\r"); |
geogarcia | 2:0edb81388d5f | 58 | pc.printf("%.2D",day); |
geogarcia | 2:0edb81388d5f | 59 | pc.printf(":%.2D",month); |
geogarcia | 2:0edb81388d5f | 60 | pc.printf(":%.2D\r",year); |
geogarcia | 2:0edb81388d5f | 61 | pc.printf(" %.2D",hours); |
geogarcia | 2:0edb81388d5f | 62 | pc.printf(":%.2D",mins); |
geogarcia | 2:0edb81388d5f | 63 | pc.printf(":%.2D\n\r",sec); |
geogarcia | 2:0edb81388d5f | 64 | } |
geogarcia | 2:0edb81388d5f | 65 | ////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 66 | ////////////////////////////////////////// SUB-RUTina INTERRUPCION2///////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 67 | void flip2(){ |
geogarcia | 2:0edb81388d5f | 68 | conteo=conteo + 1; |
geogarcia | 2:0edb81388d5f | 69 | temp1=dato.readTemperature(); |
geogarcia | 2:0edb81388d5f | 70 | muestreo=muestreo+temp1; |
geogarcia | 2:0edb81388d5f | 71 | |
geogarcia | 2:0edb81388d5f | 72 | |
geogarcia | 2:0edb81388d5f | 73 | |
geogarcia | 2:0edb81388d5f | 74 | if (conteo==1000){ |
geogarcia | 2:0edb81388d5f | 75 | avrtemp=(muestreo/conteo) ; |
geogarcia | 2:0edb81388d5f | 76 | pc.printf("*PROMEDIO DE TEMPERATURA: \r"); |
geogarcia | 2:0edb81388d5f | 77 | pc.printf("%2d C \r ",avrtemp); |
geogarcia | 2:0edb81388d5f | 78 | conteo=0; |
geogarcia | 2:0edb81388d5f | 79 | } |
geogarcia | 2:0edb81388d5f | 80 | |
geogarcia | 2:0edb81388d5f | 81 | } |
geogarcia | 2:0edb81388d5f | 82 | |
geogarcia | 2:0edb81388d5f | 83 | |
geogarcia | 2:0edb81388d5f | 84 | ///////////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 85 | |
geogarcia | 2:0edb81388d5f | 86 | ////////////////////////////////////////// SUB-RUTina INTERRUPCION1///////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 87 | void flip1(){ |
geogarcia | 2:0edb81388d5f | 88 | |
geogarcia | 2:0edb81388d5f | 89 | pc.printf("**********SE REALIZO REGISTRO DE DATOS********** \n\r"); |
geogarcia | 2:0edb81388d5f | 90 | pc.printf("Temperatura:%d C \r ",dato.readTemperature()); |
geogarcia | 2:0edb81388d5f | 91 | pc.printf("Humedad:%d Hr \r ",dato.readHumidity()); |
geogarcia | 2:0edb81388d5f | 92 | pc.printf("DATE:\r"); |
geogarcia | 2:0edb81388d5f | 93 | pc.printf("%.2D",day); |
geogarcia | 2:0edb81388d5f | 94 | pc.printf(":%.2D",month); |
geogarcia | 2:0edb81388d5f | 95 | pc.printf(":%.2D\r",year); |
geogarcia | 2:0edb81388d5f | 96 | pc.printf(" %.2D",hours); |
geogarcia | 2:0edb81388d5f | 97 | pc.printf(":%.2D",mins); |
geogarcia | 2:0edb81388d5f | 98 | pc.printf(":%.2D\n\r",sec); |
geogarcia | 2:0edb81388d5f | 99 | pc.printf("**********FIN DE REGISTRO DE DATOS**********\n\r"); |
geogarcia | 2:0edb81388d5f | 100 | |
geogarcia | 2:0edb81388d5f | 101 | |
geogarcia | 2:0edb81388d5f | 102 | |
geogarcia | 2:0edb81388d5f | 103 | } |
geogarcia | 2:0edb81388d5f | 104 | |
geogarcia | 2:0edb81388d5f | 105 | |
geogarcia | 2:0edb81388d5f | 106 | ///////////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 107 | ////////////////////////////////////////// SUB-RUTina test DS1307///////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 108 | void test_rw(int test){ |
geogarcia | 2:0edb81388d5f | 109 | if(test==0) pc.printf("Last R/W operation passed\n\r"); |
geogarcia | 2:0edb81388d5f | 110 | else pc.printf("Last R/W operation failed\n\r"); |
geogarcia | 2:0edb81388d5f | 111 | } |
geogarcia | 2:0edb81388d5f | 112 | ////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 113 | ///////////////////////// SUB-RUTina DS1307 calibracion de tiempo///////////////////////////////////////////// |
geogarcia | 2:0edb81388d5f | 114 | void DS1307RTC(){ |
geogarcia | 2:0edb81388d5f | 115 | int junk=0; |
geogarcia | 2:0edb81388d5f | 116 | sec= 40; |
geogarcia | 2:0edb81388d5f | 117 | mins= 40; |
geogarcia | 2:0edb81388d5f | 118 | hours=10; |
geogarcia | 2:0edb81388d5f | 119 | day=6; |
geogarcia | 2:0edb81388d5f | 120 | date=15; |
geogarcia | 2:0edb81388d5f | 121 | month=2; |
geogarcia | 2:0edb81388d5f | 122 | year=20; |
geogarcia | 2:0edb81388d5f | 123 | test_rw(my1307.settime(sec,mins,hours,day,date,month,year)); |
geogarcia | 2:0edb81388d5f | 124 | pc.printf("seconds set are %.2D\n\r",sec); |
geogarcia | 2:0edb81388d5f | 125 | pc.printf("minutes set are %.2D\n\r",mins); |
geogarcia | 2:0edb81388d5f | 126 | pc.printf("hours set are %.2D\n\r",hours); |
geogarcia | 2:0edb81388d5f | 127 | pc.printf("day set are %.2D\n\r",day); |
geogarcia | 2:0edb81388d5f | 128 | pc.printf("date set are %.2D\n\r",date); |
geogarcia | 2:0edb81388d5f | 129 | pc.printf("month set are %.2D\n\r",month); |
geogarcia | 2:0edb81388d5f | 130 | pc.printf("year set are %.2D\n\r",year); |
geogarcia | 2:0edb81388d5f | 131 | wait(3); |
geogarcia | 2:0edb81388d5f | 132 | |
geogarcia | 2:0edb81388d5f | 133 | //while(1){ |
geogarcia | 2:0edb81388d5f | 134 | test_rw(my1307.gettime(&sec,&mins,&hours,&day,&date,&month,&year)); |
geogarcia | 2:0edb81388d5f | 135 | pc.printf("seconds set are %.2D \n\r",sec); |
geogarcia | 2:0edb81388d5f | 136 | pc.printf("minutes set are %.2D\n\r",mins); |
geogarcia | 2:0edb81388d5f | 137 | pc.printf("hours set are %.2D\n\r",hours); |
geogarcia | 2:0edb81388d5f | 138 | pc.printf("day set are %.2D\n\r",day); |
geogarcia | 2:0edb81388d5f | 139 | pc.printf("date set are %.2D\n\r",date); |
geogarcia | 2:0edb81388d5f | 140 | pc.printf("month set are %.2D\n\r",month); |
geogarcia | 2:0edb81388d5f | 141 | pc.printf("year set are %.2D\n\r",year); |
geogarcia | 2:0edb81388d5f | 142 | |
geogarcia | 2:0edb81388d5f | 143 | junk= 0x39; |
geogarcia | 2:0edb81388d5f | 144 | test_rw(my1307.write(0x20,junk)); |
geogarcia | 2:0edb81388d5f | 145 | pc.printf("Value written to register 0x20 %.2x \n\r",junk); |
geogarcia | 2:0edb81388d5f | 146 | junk=0; |
geogarcia | 2:0edb81388d5f | 147 | test_rw(my1307.read(0x20,&junk)); |
geogarcia | 2:0edb81388d5f | 148 | pc.printf("Value read from register 0x20 %.2x \n\r",junk); |
geogarcia | 2:0edb81388d5f | 149 | wait(1); |
geogarcia | 2:0edb81388d5f | 150 | rtc=1; |
geogarcia | 2:0edb81388d5f | 151 | //} |
geogarcia | 2:0edb81388d5f | 152 | //} |
geogarcia | 2:0edb81388d5f | 153 | } |
geogarcia | 2:0edb81388d5f | 154 | |
geogarcia | 2:0edb81388d5f | 155 | /////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 156 | ////////////////////////////////////////// SUB-RUTina keypad///////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 157 | void keypad1(){ |
geogarcia | 2:0edb81388d5f | 158 | // while(1){ |
geogarcia | 1:2377110920ce | 159 | key=teclado.ReadKey(); |
geogarcia | 1:2377110920ce | 160 | if(key== '\0') |
geogarcia | 1:2377110920ce | 161 | released=1; |
geogarcia | 1:2377110920ce | 162 | if((key!= '\0')&& (released==1)){ |
geogarcia | 2:0edb81388d5f | 163 | lcd.printf("%c\n",key); |
geogarcia | 1:2377110920ce | 164 | released=0; |
geogarcia | 2:0edb81388d5f | 165 | } |
geogarcia | 2:0edb81388d5f | 166 | //} |
geogarcia | 1:2377110920ce | 167 | } |
geogarcia | 1:2377110920ce | 168 | |
geogarcia | 1:2377110920ce | 169 | /////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 170 | ////////////////////////////////////////// SUB-RUTina SENSORE DHT11///////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 171 | void sensor(){ |
geogarcia | 1:2377110920ce | 172 | s=dato.readData(); |
geogarcia | 1:2377110920ce | 173 | if (s != DHT11::OK){ |
geogarcia | 1:2377110920ce | 174 | lcd.printf("ERROR SENSOR\r\n"); |
geogarcia | 1:2377110920ce | 175 | } |
geogarcia | 1:2377110920ce | 176 | else{ |
geogarcia | 1:2377110920ce | 177 | lcd.cls(); |
geogarcia | 1:2377110920ce | 178 | return; |
geogarcia | 1:2377110920ce | 179 | |
geogarcia | 1:2377110920ce | 180 | |
geogarcia | 1:2377110920ce | 181 | } |
geogarcia | 2:0edb81388d5f | 182 | pc.printf("Temperatura:%d C \r ",dato.readTemperature()); |
geogarcia | 2:0edb81388d5f | 183 | //lcd.locate(0,1); |
geogarcia | 2:0edb81388d5f | 184 | //lcd.printf( "Hr:%d hr SP: 75 ",dato.readHumidity()); |
geogarcia | 2:0edb81388d5f | 185 | pc.printf("Humedad:%d Hr \r ",dato.readHumidity()); |
geogarcia | 1:2377110920ce | 186 | |
geogarcia | 1:2377110920ce | 187 | |
geogarcia | 1:2377110920ce | 188 | } |
geogarcia | 1:2377110920ce | 189 | |
geogarcia | 1:2377110920ce | 190 | /////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 191 | ////////////////////////////////////////// SUB-RUTINA MENU///////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 192 | void menu(){ |
geogarcia | 2:0edb81388d5f | 193 | //char tr; |
geogarcia | 1:2377110920ce | 194 | while(1){ |
geogarcia | 2:0edb81388d5f | 195 | key=teclado.ReadKey(); |
geogarcia | 1:2377110920ce | 196 | keypad1(); |
geogarcia | 2:0edb81388d5f | 197 | |
geogarcia | 1:2377110920ce | 198 | if(key=='D' ){ |
geogarcia | 1:2377110920ce | 199 | lcd.cls(); |
geogarcia | 1:2377110920ce | 200 | return; |
geogarcia | 1:2377110920ce | 201 | } |
geogarcia | 2:0edb81388d5f | 202 | //tr=key; |
geogarcia | 1:2377110920ce | 203 | //void inicial(); |
geogarcia | 1:2377110920ce | 204 | |
geogarcia | 1:2377110920ce | 205 | lcd.locate(0,0);// LOCALIZA INICIO DE TEXTO EN COLUMNAS Y FILAS |
geogarcia | 1:2377110920ce | 206 | lcd.printf( " Menu " ); |
geogarcia | 1:2377110920ce | 207 | lcd.locate(0,1); |
geogarcia | 2:0edb81388d5f | 208 | // lcd.printf( " Configuracion " ); |
geogarcia | 2:0edb81388d5f | 209 | //lcd.printf("%c\n", tr ); |
geogarcia | 1:2377110920ce | 210 | //wait(3); |
geogarcia | 1:2377110920ce | 211 | //lcd.cls();//borra caracters |
geogarcia | 2:0edb81388d5f | 212 | if((key!= '\0')&& (released==1)){ |
geogarcia | 2:0edb81388d5f | 213 | lcd.printf("%c\n",key); |
geogarcia | 2:0edb81388d5f | 214 | released=0; |
geogarcia | 2:0edb81388d5f | 215 | } |
geogarcia | 1:2377110920ce | 216 | } |
geogarcia | 1:2377110920ce | 217 | |
geogarcia | 1:2377110920ce | 218 | } |
geogarcia | 1:2377110920ce | 219 | |
geogarcia | 1:2377110920ce | 220 | /////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 221 | //////////////////////////////////// SUB-RUTINA INICIAL /////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 222 | void inicial(){ |
geogarcia | 1:2377110920ce | 223 | while(1){ |
geogarcia | 1:2377110920ce | 224 | //lcd.cls(); |
geogarcia | 2:0edb81388d5f | 225 | //keypad1(); |
geogarcia | 1:2377110920ce | 226 | |
geogarcia | 2:0edb81388d5f | 227 | //if ( key=='A'){ |
geogarcia | 2:0edb81388d5f | 228 | //lcd.cls(); //borra caracters |
geogarcia | 2:0edb81388d5f | 229 | //menu(); |
geogarcia | 2:0edb81388d5f | 230 | //} |
geogarcia | 1:2377110920ce | 231 | |
geogarcia | 1:2377110920ce | 232 | sensor(); |
geogarcia | 2:0edb81388d5f | 233 | lecturads1307(); |
geogarcia | 1:2377110920ce | 234 | |
geogarcia | 1:2377110920ce | 235 | |
geogarcia | 1:2377110920ce | 236 | //temp:dato.readTemperature(); |
geogarcia | 1:2377110920ce | 237 | //hum: dato.readHumidity(); |
geogarcia | 2:0edb81388d5f | 238 | //lcd.locate(0,0); // LOCALIZA INICIO DE TEXTO EN COLUMNAS Y FILAS |
geogarcia | 2:0edb81388d5f | 239 | //lcd.printf( "T :%d C SP: 40",dato.readTemperature()); |
geogarcia | 2:0edb81388d5f | 240 | //pc.printf("Temperatura:%d C \r ",dato.readTemperature()); |
geogarcia | 2:0edb81388d5f | 241 | //lcd.locate(0,1); |
geogarcia | 2:0edb81388d5f | 242 | //lcd.printf( "Hr:%d hr SP: 75 ",dato.readHumidity()); |
geogarcia | 2:0edb81388d5f | 243 | //pc.printf("Humedad:%d Hr \r ",dato.readHumidity()); |
geogarcia | 2:0edb81388d5f | 244 | wait(1); |
geogarcia | 1:2377110920ce | 245 | |
geogarcia | 1:2377110920ce | 246 | } // cierra while |
geogarcia | 1:2377110920ce | 247 | } // cierra rutina |
geogarcia | 0:fff27b50ca98 | 248 | |
geogarcia | 1:2377110920ce | 249 | ///////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 250 | //////////////////////////////////// RUTINA PRINCIPAL ////////////////////////////////////////////// |
geogarcia | 0:fff27b50ca98 | 251 | int main() { |
geogarcia | 1:2377110920ce | 252 | z=0; |
geogarcia | 2:0edb81388d5f | 253 | conteo=0; |
geogarcia | 2:0edb81388d5f | 254 | muestreo=0; |
geogarcia | 2:0edb81388d5f | 255 | avrtemp=0; |
geogarcia | 2:0edb81388d5f | 256 | avrhum=0; |
geogarcia | 1:2377110920ce | 257 | released=1; |
geogarcia | 1:2377110920ce | 258 | //lcd.printf("helllooo people");// escribe caracteres en el lcd |
geogarcia | 2:0edb81388d5f | 259 | flipper1.attach(&flip1,20.0); |
geogarcia | 2:0edb81388d5f | 260 | flipper2.attach(&flip2,0.001); |
geogarcia | 0:fff27b50ca98 | 261 | while(1) { |
geogarcia | 2:0edb81388d5f | 262 | |
geogarcia | 2:0edb81388d5f | 263 | //if (rtc==0) DS1307RTC(); |
geogarcia | 1:2377110920ce | 264 | // lcd.cls();//borra caracters |
geogarcia | 2:0edb81388d5f | 265 | //lcd.locate(0,0);// LOCALIZA INICIO DE TEXTO EN COLUMNAS Y FILAS |
geogarcia | 2:0edb81388d5f | 266 | //lcd.printf( " Proyecto " ); |
geogarcia | 2:0edb81388d5f | 267 | pc.printf("PROYECTO TUTORIA\n\r " ); |
geogarcia | 2:0edb81388d5f | 268 | //lcd.locate(0,1); |
geogarcia | 2:0edb81388d5f | 269 | //lcd.printf( " Tutoria " ); |
geogarcia | 2:0edb81388d5f | 270 | //pc.printf("Tutoria \n\r "); |
geogarcia | 1:2377110920ce | 271 | wait(3); |
geogarcia | 2:0edb81388d5f | 272 | //lcd.cls();//borra caracters |
geogarcia | 2:0edb81388d5f | 273 | //lcd.locate(0,0); |
geogarcia | 2:0edb81388d5f | 274 | //lcd.printf( " Sistemas " ); |
geogarcia | 2:0edb81388d5f | 275 | pc.printf("SISTEMAS MICROPROCESADOS \n\r "); |
geogarcia | 2:0edb81388d5f | 276 | pc.printf("GEOVANNY GARCIA \n\r "); |
geogarcia | 2:0edb81388d5f | 277 | |
geogarcia | 1:2377110920ce | 278 | lcd.locate(0,1); |
geogarcia | 1:2377110920ce | 279 | lcd.printf( "Microprocesados " ); |
geogarcia | 2:0edb81388d5f | 280 | //pc.printf("MICROPORCESADOS \n\r "); |
geogarcia | 2:0edb81388d5f | 281 | wait(2); |
geogarcia | 2:0edb81388d5f | 282 | //lcd.cls();//borra caracters |
geogarcia | 1:2377110920ce | 283 | inicial(); |
geogarcia | 1:2377110920ce | 284 | |
geogarcia | 1:2377110920ce | 285 | } |
geogarcia | 1:2377110920ce | 286 | |
geogarcia | 0:fff27b50ca98 | 287 | } |
geogarcia | 1:2377110920ce | 288 | |
geogarcia | 1:2377110920ce | 289 | /////////////////////////////////////////////////////////////////////////////////////////////////////// |
geogarcia | 1:2377110920ce | 290 | |
geogarcia | 1:2377110920ce | 291 | |
geogarcia | 1:2377110920ce | 292 |