electro
Dependencies: mbed mbed-os KeypadLib TextLCD
electrocoagulador_final.cpp
- Committer:
- afsaavedram
- Date:
- 2019-03-02
- Revision:
- 2:4b27d3d7341a
- Parent:
- 1:48c8726d6824
- Child:
- 3:a4994da37d1f
File content as of revision 2:4b27d3d7341a:
#include "mbed.h" #include "keypad.h" #include "TextLCD.h" #include "stdlib.h" /*******************ELECTROVALVULAS********************/ DigitalOut E_1(D8); //Control de electrovalvula 1 DigitalOut E_2(D9); //Control de electrovalvula 2 DigitalOut E_3(D10); //Control de electrovalvula 3 DigitalOut E_4(D12); //Control de electrovalvula 4 AnalogIn sensor_nivel(A0); //Sensor nivel tanque 1 /*****************************************************/ /*******************INTERRUPCIONES********************/ InterruptIn button(USER_BUTTON); Timeout t_1; Timeout t_2; Timeout t_3; Timeout t_4; //tiempos de usuario float temp_user_1=0; //tiempo tope de electrocoagulacion float temp_user_2=0; //tiempo tope de reposo de la vinaza float temp_user_3=0; //tiempo tope de vaciado del agua en el tanque 2 float temp_user_4=0; //tiempo tope de vaciado de residuos en el tanque 2 /********************TECLADO Y LCD***********************/ // rs, e,d4,d5,d6,d7 TextLCD lcd(PC_8,PC_9,PC_10,PC_11,PC_12,PD_2); Keypad keypad(D3, D2, D1, D0, D7, D6, D5, D4); float num=0; char cadena[3]= {' ',' ',' '}; int llena=0; //verificar que la entrada es de 3 numeros /*********************FUNCIONES**************************/ void stop() //STOP { while(1) { lcd.cls(); } } bool electro_1() { E_1=!E_1; return E_1; } bool electro_2() { E_2=!E_2; return E_2; } bool electro_3() { E_3=!E_3; return E_3; } bool electro_4() { E_4=!E_4; return E_4; } /***********************MAIN***************************/ int main() { button.rise(&stop); keypad.enablePullUp(); wait(1); lcd.locate(0,0); lcd.printf(" Control para\n"); lcd.locate(0,1); lcd.printf("electrocoagular\n"); wait(3); lcd.cls(); lcd.locate(0,0); lcd.printf("t_1=%f",temp_user_1); lcd.locate(8,0); lcd.printf("t_2=%f",temp_user_2); lcd.locate(0,1); lcd.printf("t_3=%f",temp_user_3); lcd.locate(8,1); lcd.printf("t_4=%f",temp_user_4); while(1) { char key = keypad.getKey(); //if(key=='A') { //lcd.cls(); //lcd.locate(0,0); //lcd.printf("%c",key); //wait(3); // lcd.printf("t_1=%f",temp_user_1); //if(key=='A'){temp_user_1=10;} if(key=='A'){ while(llena<=2){ switch(llena){ case 0: if(llena==0 && keypad.getKey()!= '\0'){ cadena[llena]=keypad.getKey(); llena=llena +1; break; } case 1: if(llena==1 && keypad.getKey()!= '\0'){ cadena[llena]=keypad.getKey(); llena=llena+1; break; } case 2: if(llena==2 && keypad.getKey()!= '\0'){ cadena[llena]=keypad.getKey(); llena=llena+1; break;} default: break; } lcd.cls(); temp_user_1=strtod(cadena,NULL); lcd.locate(0,0); lcd.printf("t_1=%f",temp_user_1); } } }//termina while de main }//termina main