Dependencies:   TextLCD mbed

Fork of 4_1bueno by Israel Hernández Orozco

Files at this revision

API Documentation at this revision

Comitter:
aldomarez
Date:
Wed Oct 17 20:28:26 2018 +0000
Parent:
0:df5d1a705b6d
Commit message:
ticker and LCD

Changed in this revision

41prueba.cpp Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/41prueba.cpp	Wed Sep 26 18:37:40 2018 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,314 +0,0 @@
-/*Proponga  un  programa  que  inicie  con  el  mensaje  “Contraseña”  y  obtenga  3  dígitos  de  contraseña
-mediante  el  teclado,  visualizando  en  un  LCD  uno  a  uno  de  los  caracteres,  al  obtener  los  tres  dígitos
-visualizar  la  contraseña  y  esperar  un  segundo  para  mostrar  el  mensaje  “acceso”  recorriéndolo  a  la
-derecha  y  activar  un  actuador(relevador  ó  motor  CD)  durante2  segundo,  el  caso  de  ser  incorrecto
-que  aparezca  “denegado”  recorriendo  el  texto  a  la  derecha  durante  2  segundos,  al  finalizar  que
-aparezca  el  texto  “Contraseña”
-*/
-#include "mbed.h"
-#include "TextLCD.h"
-
-BusOut r(D8,D9,D10,D11);
-BusIn c(D12,D13,D14,D15);
-DigitalOut motor(D7);
-TextLCD lcd(D2,D3,A2,A3,A4,A5); // rs, e, d4-d7
-
-int main() {
-     while(1){
-         lcd.cls();
-         int c1='0';int c2='6';int c3='9';
-         int T1='0';
-         int T2='0';
-         int T3='0';
-         int val=1;
-                 val=1;
-                 while(val){
-                 lcd.printf("Contrasena\n");wait(0.1);lcd.cls();
-                 for (int i=0; i<4;i++){
-                     r=1<<i;
-                     switch(c){//switch 1
-                        case 0x01:
-                            switch(r){
-                                case 0x01:
-                                    T1='1';lcd.printf("1\n");wait(0.5);lcd.cls();val=0;break;//1
-                                case 0x02:
-                                    T1='4';lcd.printf("4\n");wait(0.5);lcd.cls();val=0;break;//4
-                                case 0x04:
-                                    T1='7';lcd.printf("7\n");wait(0.5);lcd.cls();val=0;break;//7
-                                case 0x08:
-                                    wait(0.1);break; //asterisco
-                            }        
-                            break;
-                        case 0x02:
-                            switch(r){
-                                case 0x01:
-                                    T1='2';lcd.printf("2\n");wait(0.5);lcd.cls();val=0;break;//2
-                                case 0x02:
-                                    T1='5';lcd.printf("5\n");wait(0.5);lcd.cls();val=0;break;//5
-                                case 0x04:
-                                    T1='8';lcd.printf("8\n");wait(0.5);lcd.cls();val=0;break;//8
-                                case 0x08:
-                                    T1='0';lcd.printf("0\n");wait(0.5);lcd.cls();val=0;break; //0
-                            }  
-                            break;
-                        case 0x04:
-                            switch(r){
-                                case 0x01:
-                                    T1='3';lcd.printf("3\n");wait(0.5);lcd.cls();val=0;break;//3
-                                case 0x02:
-                                    T1='6';lcd.printf("6\n");wait(0.5);lcd.cls();val=0;break;//6
-                                case 0x04:
-                                    T1='9';lcd.printf("9\n");wait(0.5);lcd.cls();val=0;break;//9
-                                case 0x08:
-                                    wait(0.1);break; //#
-                            } 
-                            break;
-                        case 0x08:
-                            switch(r){
-                                case 0x01:
-                                    wait(0.1);break;//A
-                                case 0x02:
-                                    wait(0.1);break;//B
-                                case 0x04:
-                                    wait(0.1);break;//C
-                                case 0x08:
-                                    wait(0.1);break; //D
-                            } //end switch2
-                            break;
-                        default:
-                            wait(0.001);
-                            break;
-                    }//end switch1
-            }//end for
-         }//end while val
-         
-         int val2=1;
-                 val2=1;
-                 while(val2){
-                 for (int i=0; i<4;i++){
-                     r=1<<i;
-                     switch(c){//switch 1
-                        case 0x01:
-                            switch(r){
-                                case 0x01:
-                                    T2='1';lcd.printf("1\n");wait(0.5);lcd.cls();val2=0;break;//1
-                                case 0x02:
-                                    T2='4';lcd.printf("4\n");wait(0.5);lcd.cls();val2=0;break;//4
-                                case 0x04:
-                                    T2='7';lcd.printf("7\n");wait(0.5);lcd.cls();val2=0;break;//7
-                                case 0x08:
-                                    wait(0.1);break; //asterisco
-                            }        
-                            break;
-                        case 0x02:
-                            switch(r){
-                                case 0x01:
-                                    T2='2';lcd.printf("2\n");wait(0.5);lcd.cls();val2=0;break;//2
-                                case 0x02:
-                                    T2='5';lcd.printf("5\n");wait(0.5);lcd.cls();val2=0;break;//5
-                                case 0x04:
-                                    T2='8';lcd.printf("8\n");wait(0.5);lcd.cls();val2=0;break;//8
-                                case 0x08:
-                                    T2='0';lcd.printf("0\n");wait(0.5);lcd.cls();val2=0;break; //0
-                            }  
-                            break;
-                        case 0x04:
-                            switch(r){
-                                case 0x01:
-                                    T2='3';lcd.printf("3\n");wait(0.5);lcd.cls();val2=0;break;//3
-                                case 0x02:
-                                    T2='6';lcd.printf("6\n");wait(0.5);lcd.cls();val2=0;break;//6
-                                case 0x04:
-                                    T2='9';lcd.printf("9\n");wait(0.5);lcd.cls();val2=0;break;//9
-                                case 0x08:
-                                    wait(0.1);break; //#
-                            } 
-                            break;
-                        case 0x08:
-                            switch(r){
-                                case 0x01:
-                                    wait(0.1);break;//A
-                                case 0x02:
-                                    wait(0.1);break;//B
-                                case 0x04:
-                                    wait(0.1);break;//C
-                                case 0x08:
-                                    wait(0.1);break; //D
-                            } //end switch2
-                            break;
-                        default:
-                            wait(0.001);
-                            break;
-                    }//end switch1
-            }//end for
-         }//end while val 2
-         
-         int val3=1;
-                 val3=1;
-                 while(val3){
-                 for (int i=0; i<4;i++){
-                     r=1<<i;
-                     switch(c){//switch 1
-                        case 0x01:
-                            switch(r){
-                                case 0x01:
-                                    T3='1';lcd.printf("1\n");wait(0.5);lcd.cls();val3=0;break;//1
-                                case 0x02:
-                                    T3='4';lcd.printf("4\n");wait(0.5);lcd.cls();val3=0;break;//4
-                                case 0x04:
-                                    T3='7';lcd.printf("7\n");wait(0.5);lcd.cls();val3=0;break;//7
-                                case 0x08:
-                                    wait(0.1);break; //asterisco
-                            }        
-                            break;
-                        case 0x02:
-                            switch(r){
-                                case 0x01:
-                                    T3='2';lcd.printf("2\n");wait(0.5);lcd.cls();val3=0;break;//2
-                                case 0x02:
-                                    T3='5';lcd.printf("5\n");wait(0.5);lcd.cls();val3=0;break;//5
-                                case 0x04:
-                                    T3='8';lcd.printf("8\n");wait(0.5);lcd.cls();val3=0;break;//8
-                                case 0x08:
-                                    T3='0';lcd.printf("0\n");wait(0.5);lcd.cls();val3=0;break; //0
-                            }  
-                            break;
-                        case 0x04:
-                            switch(r){
-                                case 0x01:
-                                    T3='3';lcd.printf("3\n");wait(0.5);lcd.cls();val3=0;break;//3
-                                case 0x02:
-                                    T3='6';lcd.printf("6\n");wait(0.5);lcd.cls();val3=0;break;//6
-                                case 0x04:
-                                    T3='9';lcd.printf("9\n");wait(0.5);lcd.cls();val3=0;break;//9
-                                case 0x08:
-                                    wait(0.1);break; //#
-                            } 
-                            break;
-                        case 0x08:
-                            switch(r){
-                                case 0x01:
-                                    wait(0.1);break;//A
-                                case 0x02:
-                                    wait(0.1);break;//B
-                                case 0x04:
-                                    wait(0.1);break;//C
-                                case 0x08:
-                                    wait(0.1);break; //D
-                            } //end switch2
-                            break;
-                        default:
-                            wait(0.001);
-                            break;
-                    }//end switch1
-            }//end for
-         }//end while val 3
-                
-         for(int k=0;k<5;k++){  //adorno
-             lcd.printf("*******\n");wait(0.2);lcd.cls();
-             lcd.printf(" \n");wait(0.2);lcd.cls();
-             }
-        
-        lcd.printf(" %c %c %c\n", T1, T2, T3);wait(1);lcd.cls(); //mostrando contraseña
-           
-        //int c1=contra[0];int c2=contra[1];int c3=contra[2];     
-        if(T1==c1 && T2==c2 && T3==c3){
-            lcd.printf("O\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("SO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("ESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("CESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("CCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf(" ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("  ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("   ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("    ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("     ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("      ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("       ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("        ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("         ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("          ACCESO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("           ACCES\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("            ACCE\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("             ACC\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("              AC\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("               A\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf(" \n");wait(0.2);lcd.cls();            
-            motor=1;
-            wait(2);
-            motor=0;
-        }
-        else{
-            lcd.printf("O\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("DO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("ADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("GADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("EGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("NEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("ENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf(" DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("  DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("   DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("    DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("     DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("      DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("       DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("        DENEGADO\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("         DENEGAD\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("          DENEGA\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("           DENEG\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("            DENE\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("             DEN\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("              DE\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.001);lcd.cls();
-            lcd.printf("               D\n");wait(0.2);lcd.cls();
-            lcd.printf(" \n");wait(0.2);lcd.cls();
-            NVIC_SystemReset();
-        }
-        
-     }  //end while (1)
-}//end int
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Wed Oct 17 20:28:26 2018 +0000
@@ -0,0 +1,31 @@
+#include "mbed.h"
+#include "TextLCD.h"
+
+TextLCD lcd(D4,D5,A2,A3,A4,A5); // rs, e, d4-d7
+AnalogIn val1(A0);
+AnalogIn val2(A1);
+DigitalOut motor(D6);
+Ticker  flipper;
+float v1;
+float v2;
+float lima = 25.0f;
+float limb = 18.0f;
+
+void  flip()  {  
+    v1 = val1;
+    v2 = val2;
+    v1 = v1 * 33.3f;
+    v2 = v2 * 33.3f;
+} 
+int main() {
+    flipper.attach(&flip, 0.4);  
+    while(1) {
+        lcd.printf("V1= %f C\nV2= %f C", v1,v2);
+        wait(0.2);
+        lcd.cls();
+        if(v1>=lima && v2<=limb) {
+            motor = 1;
+            }
+        else motor = 0;
+    }
+}
\ No newline at end of file