electro

Dependencies:   mbed QEI mbed-os KeypadLib TextLCD

Revision:
3:a4994da37d1f
Parent:
2:4b27d3d7341a
Child:
4:2636fe1c6527
diff -r 4b27d3d7341a -r a4994da37d1f electrocoagulador_final.cpp
--- a/electrocoagulador_final.cpp	Sat Mar 02 02:07:39 2019 +0000
+++ b/electrocoagulador_final.cpp	Sat Mar 02 04:29:55 2019 +0000
@@ -5,10 +5,10 @@
 
 /*******************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
+DigitalOut E_1(D8,0);             //Control de electrovalvula 1
+DigitalOut E_2(D9,0);             //Control de electrovalvula 2
+DigitalOut E_3(D10,0);             //Control de electrovalvula 3
+DigitalOut E_4(D12,0);             //Control de electrovalvula 4
 AnalogIn sensor_nivel(A0);      //Sensor nivel tanque 1
 /*****************************************************/
 
@@ -21,10 +21,10 @@
 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
+int temp_user_1=0;                      //tiempo tope de electrocoagulacion
+int temp_user_2=0;                      //tiempo tope de reposo de la vinaza
+int temp_user_3=0;                      //tiempo tope de vaciado del agua en el tanque 2
+int temp_user_4=0;                      //tiempo tope de vaciado de residuos en el tanque 2
 
 
 
@@ -48,31 +48,31 @@
 
     while(1) {
         lcd.cls();
+        lcd.printf("      STOP!");
+        lcd.locate(0,1);
+        lcd.printf("  PLEASE RESET");
+        wait_ms(150);
     }
 }
 
-bool electro_1()
+void electro_1()
 {
     E_1=!E_1;
-    return E_1;
 }
 
-bool electro_2()
+void electro_2()
 {
     E_2=!E_2;
-    return E_2;
 }
 
-bool electro_3()
+void electro_3()
 {
     E_3=!E_3;
-    return E_3;
 }
 
-bool electro_4()
+void electro_4()
 {
     E_4=!E_4;
-    return E_4;
 }
 /***********************MAIN***************************/
 
@@ -85,69 +85,148 @@
     lcd.printf("  Control para\n");
     lcd.locate(0,1);
     lcd.printf("electrocoagular\n");
-    wait(3);
+    wait(1.5);
     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) {
+ini_1:
+        lcd.cls();
+        lcd.locate(0,0);
+        lcd.printf("t_1=%d",temp_user_1);
+        lcd.locate(8,0);
+        lcd.printf("t_2=%d",temp_user_2);
+        lcd.locate(0,1);
+        lcd.printf("t_3=%d",temp_user_3);
+        lcd.locate(8,1);
+        lcd.printf("t_4=%d",temp_user_4);
+        wait_ms(100);
 
         char key = keypad.getKey();
 
         //if(key=='A') {
-            //lcd.cls();
-            //lcd.locate(0,0);
-            //lcd.printf("%c",key);
-            //wait(3);
- 
-                
+        //lcd.cls();
+        //lcd.locate(0,0);
+        //lcd.printf("%c",key);
+        //wait(3);
 
-                //           lcd.printf("t_1=%f",temp_user_1);
+
+
+        //           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;
-                            }
+        if(key=='1') {
+            temp_user_1=temp_user_1+10;
+            if(temp_user_1<00) {
+                temp_user_1=00;
+            }
+            wait_ms(150);
+        }
+        if(key=='2') {
+            temp_user_1=temp_user_1-1;
+            if(temp_user_1<00) {
+                temp_user_1=00;
+            }
+            wait_ms(150);
+        }
+        if(key=='3') {
+            temp_user_2=temp_user_2+10;
+            if(temp_user_2<00) {
+                temp_user_2=00;
+            }
+            wait_ms(150);
+        }
+        if(key=='A') {
+            temp_user_2=temp_user_2-1;
+            if(temp_user_2<00) {
+                temp_user_2=00;
+            }
+            wait_ms(150);
+        }
+        if(key=='4') {
+            temp_user_3=temp_user_3+10;
+            if(temp_user_3<00) {
+                temp_user_3=00;
+            }
+            wait_ms(150);
+        }
+        if(key=='5') {
+            temp_user_3=temp_user_3-1;
+            if(temp_user_3<00) {
+                temp_user_3=00;
+            }
+            wait_ms(150);
+        }
+        if(key=='6') {
+            temp_user_4=temp_user_4+10;
+            if(temp_user_4<00) {
+                temp_user_4=00;
+            }
+            wait_ms(150);
+        }
+        if(key=='B') {
+            temp_user_4=temp_user_4-1;
+            if(temp_user_4<00) {
+                temp_user_4=00;
+            }
+            wait_ms(150);
+        }
 
-                            case 1:
-                            if(llena==1 && keypad.getKey()!= '\0'){
-                            cadena[llena]=keypad.getKey();
-                            llena=llena+1;
-                            break;
-                            }
+        /***********************COMIENZA CONTROL***********************/
+        if(key=='D' && temp_user_1!=0) {
+            t_1.attach(&electro_1,temp_user_1);
+            
+
+
+
 
-                            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);
+        } else if (key=='D' && temp_user_1==0) {
+            lcd.cls();
+            lcd.printf("   t_1 empty");
+            wait(1.5);
+            key='\0';
+            goto ini_1;
+        }
+
+
+        /*
+        if(key=='A'){
+            while(llena<=2){
+            if(llena<3){
+            cadena[llena]=keypad.getKey();
+            temp_user_1=strtod(cadena,NULL);
+            llena++;
+                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);
+