Código para o menu no LCD

Dependencies:   mbed SDFileSystemSD TextLCD

Fork of TextLCD_HelloWorld2 by Wim Huiskamp

Revision:
44:15968c7431c6
Parent:
43:4684aba69ba6
Child:
49:ab4ab0924fd1
--- a/classes.h	Mon Jun 11 20:09:48 2018 +0000
+++ b/classes.h	Mon Jun 11 23:38:52 2018 +0000
@@ -346,7 +346,8 @@
                        
     //func 0
     void inicializar(){ //função tela incial de boas-vindas
-        int status;        
+        bot_enter = penter;
+        //int status;        
         printf("Starting...\n\r");        
         machine.reset();
         lcd.cls();
@@ -354,15 +355,14 @@
         lcd.printf("Bem-vindo(a)");
         lcd.locate(0,1);
         lcd.printf("Utilize seu EPI para operar a maquina.");
-        wait(1);        
-        /*status = sdcard.get_file_names();
-        if(status){
-            printf("Filenames: \n\r");
-            for(int i = 0; i < filenames.size(); i++){
-                 printf("%s\n\r", filenames[i]);
-            }    
-        }*/
-        func = 1;
+        lcd.locate(9,3);
+        lcd.printf("OK");
+        movercursor(3,3,8);
+        if (bot_enter!=penter){
+            if (linha==3){
+                func = 1;
+                }
+            }
         }
     
     //func 1    
@@ -377,7 +377,7 @@
         lcd.locate(1,2);
         lcd.printf("Zerar");
         lcd.locate(1,3);
-        lcd.printf("Config");
+        lcd.printf("Menu");
         movercursor(0,3,0);
         if (bot_enter!=penter){
             if (linha==0){
@@ -469,12 +469,12 @@
         
         lcd.cls();
         bot_enter = penter;
-        lcd.locate(1,2);
-        lcd.printf("Modo WiFi");
         lcd.locate(1,0);
         lcd.printf("Limpar seringa cola");
         lcd.locate(1,1);
         lcd.printf("Origem maquina");
+        lcd.locate(1,2);
+        lcd.printf("Modo WiFi");
         lcd.locate(1,3);
         lcd.printf("Voltar");
         movercursor(0,3,0);
@@ -483,11 +483,11 @@
                 func = 13;
                 }
             else if (linha==1) {
-                func = 14;
+                func = 18;
                 }
             else if (linha==0) {
                 home = 1;
-                func = 18;
+                func = 14;
                 }
             else if (linha==3) {
                 func = 1;
@@ -541,35 +541,19 @@
                 }
             if (linha==1){
                 cola = 0;
-                if (pontos==0 && maxpontos>10){
-                    cx_salva = 0;
-                    cy_salva = 0;
-                    cz_salva = 0;
+                if (pontos==0){
                     pontos++;
                     maxpontos--;
                     machine.save_point(cola,1.0);
                     printf("salvei ponto\n\r");
-                    func = 22;
+                    func = 2;
                     }
-                else if (pontos>=1 && maxpontos>10){
-                    cx_salva = cx;
-                    cy_salva = cy;
-                    cz_salva = cz;
+                else if (pontos>=1 && maxpontos>0){
                     pontos++;
                     maxpontos--;
                     machine.save_point(cola,1.0);
                     printf("salvei ponto\n\r");
-                    func = 22;
-                    }
-                else if (maxpontos<=10){
-                    cx_salva = cx;
-                    cy_salva = cy;
-                    cz_salva = cz;
-                    pontos++;
-                    maxpontos--;
-                    machine.save_point(cola,1.0);
-                    printf("salvei ponto\n\r");
-                    func = 5;
+                    func = 2;
                     }
                 else if (maxpontos==0){
                     func = 16;
@@ -577,35 +561,19 @@
                 }
             else if (linha==2) {
                 cola = 1;
-                if (pontos==0 && maxpontos>10){
-                    cx_salva = 0;
-                    cy_salva = 0;
-                    cz_salva = 0;
+                if (pontos==0){
                     pontos++;
                     maxpontos--;
                     machine.save_point(cola,1.0);
                     printf("salvei ponto\n\r");
-                    func = 22;
+                    func = 2;
                     }
-                else if (pontos>=1 && maxpontos>10){
-                    cx_salva = cx;
-                    cy_salva = cy;
-                    cz_salva = cz;
+                else if (pontos>=1 && maxpontos>0){
                     pontos++;
                     maxpontos--;
                     machine.save_point(cola,1.0);
                     printf("salvei ponto\n\r");
-                    func = 22;
-                    }
-                else if (maxpontos<=10){
-                    cx_salva = cx;
-                    cy_salva = cy;
-                    cz_salva = cz;
-                    pontos++;
-                    maxpontos--;
-                    machine.save_point(cola,1.0);
-                    printf("salvei ponto\n\r");
-                    func = 5;
+                    func = 2;
                     }
                 else if (maxpontos==0){
                     func = 16;
@@ -613,35 +581,19 @@
                 }
             else if (linha==3) {
                 cola = 2;
-                if (pontos==0 && maxpontos>10){
-                    cx_salva = 0;
-                    cy_salva = 0;
-                    cz_salva = 0;
+                if (pontos==0){
                     pontos++;
                     maxpontos--;
                     machine.save_point(cola,1.0);
                     printf("salvei ponto\n\r");
-                    func = 22;
+                    func = 2;
                     }
-                else if (pontos>=1 && maxpontos>10){
-                    cx_salva = cx;
-                    cy_salva = cy;
-                    cz_salva = cz;
+                else if (pontos>=1 && maxpontos>0){
                     pontos++;
                     maxpontos--;
                     machine.save_point(cola,1.0);
                     printf("salvei ponto\n\r");
-                    func = 22;
-                    }
-                else if (maxpontos<=10){
-                    cx_salva = cx;
-                    cy_salva = cy;
-                    cz_salva = cz;
-                    pontos++;
-                    maxpontos--;
-                    machine.save_point(cola,1.0);
-                    printf("salvei ponto\n\r");
-                    func = 5;
+                    func = 2;
                     }
                 else if (maxpontos==0){
                     func = 16;
@@ -690,10 +642,12 @@
         bot_enter = penter;
         machine.kill_jog();
         machine.jog();
-        lcd.locate(0,0);
+        lcd.locate(1,0);
         lcd.printf("Selecione");
-        //lcd.locate(0,1);
-        //lcd.printf("
+        lcd.locate(2,1);
+        lcd.printf("um eixo");
+        lcd.locate(1,2);
+        lcd.printf("p/ zerar");
         lcd.locate(13,0);
         lcd.printf("X");
         lcd.locate(13,1);
@@ -731,7 +685,7 @@
         
         lcd.cls();
         machine.start_program();
-        printf("start program, %s\n\r", arquivo);
+        //printf("start program, %s\n\r", arquivo);
         lcd.locate(4,1);
         lcd.printf("Executando");
         //tpontinhos.start();
@@ -777,9 +731,9 @@
         
         lcd.cls();
         bot_enter = penter;
-        lcd.printf("Certifique-se de que a maquina pode se");
+        lcd.printf("CERTIFIQUE-SE DE QUE A MAQUINA PODE SE");
         lcd.locate(5,2);
-        lcd.printf("movimentar.");
+        lcd.printf("MOVIMENTAR.");
         lcd.locate(9,3);
         lcd.printf("OK");
         movercursor(3,3,8);
@@ -800,8 +754,13 @@
         lcd.printf("Modo WiFi Ativo"); 
         movercursor(3,3,5);
         lcd.locate(6,3);
-        lcd.printf("Cancelar");   
-    }
+        lcd.printf("Cancelar");
+        if (bot_enter!=penter){
+            if (linha==3){
+                func = 1;
+                }
+            }   
+        }
     
     //func 14
     void limparcola(){
@@ -819,7 +778,7 @@
         if (bot_enter!=penter) {
             if (linha==2){
                 printf("sim home\n\r");
-                func = 12;
+                func = 28;
                 }
             else if (linha==3){
                 func = 4;
@@ -831,7 +790,9 @@
     void gohome(){
         
         lcd.cls();
-        //escrever a tela
+        lcd.locate(2,1);
+        printf("indo home\n\r");
+        lcd.printf("Movimentando...");
         machine.machine_zero();
         while (home == 1){
             if(emerg){
@@ -888,9 +849,9 @@
         
         lcd.cls();
         bot_enter = penter;
-        lcd.printf("Certifique-se de que a maquina pode se");
+        lcd.printf("CERTIFIQUE-SE DE QUE A MAQUINA PODE SE");
         lcd.locate(5,2);
-        lcd.printf("movimentar");
+        lcd.printf("MOVIMENTAR.");
         lcd.locate(9,3);
         lcd.printf("OK");
         movercursor(3,3,8);
@@ -934,28 +895,24 @@
             int len = nome.length();
             nome.erase(len - 1);
             nome.append(".txt");
-            //printf("Nome do programa: %s\n\r", nome);
             int verificar = sdcard.check_name_available(nome);
-            //printf("Status do nome: %d\n\r", verificar);
-            if (verificar){
-                /*lcd.locate(5,1);
-                lcd.printf("Salvando");
-                lcd.locate(5,2);
-                lcd.printf("%s", nome);*/
+            printf("%d\n\r", verificar);
+            if (verificar==1){
+                printf("entre\n\r");
                 file_name = nome;
                 machine.get_saved_points();
                 while(1){
                     if(Mach.readable()){
                         readSerial();
                         break;
+                        }
                     }
-                }
-                //printf("ok\n\r");
+                printf("ok\n\r");
                 func = 25;
                 }
             else if (!verificar){
                 func = 21;
-                //printf("nok\n\r");
+                printf("nok\n\r");
                 }
             }
         }
@@ -1065,7 +1022,7 @@
         
         lcd.cls();
         lcd.locate(1,1);
-        lcd.printf("Você removeu o ultimo ponto");
+        lcd.printf("Voce removeu o ultimo ponto");
         //lcd.locate(2,2);
         //lcd.printf("ESTA NA ORIGEM");
         wait(1);
@@ -1086,7 +1043,8 @@
         
     //func 25
     void salvando_arq(){
-        
+        printf("salvou");
+        lcd.cls();
         lcd.locate(5,1);
         lcd.printf("Salvando");
         lcd.locate(1,2);
@@ -1149,14 +1107,17 @@
         
         lcd.cls();
         bot_enter = penter;
+        machine.jog();
         printf("foi home\n\r");
-        lcd.locate(0,0);
-        lcd.printf("Posicione o recipiente");
-        lcd.locate(3,1);
-        lcd.printf("abaixo do bico.");
-        lcd.locate(9,3);
-        lcd.printf("OK");
-        movercursor(3,3,8);
+        lcd.locate(4,0);
+        lcd.printf("Posicione um");
+        lcd.locate(5,1);
+        lcd.printf("recipiente");
+        lcd.locate(3,2);
+        lcd.printf("abaixo do bico");
+        lcd.locate(7,3);
+        lcd.printf("PRONTO");
+        movercursor(3,3,6);
         if (bot_enter!=penter){
             if (linha==3){
                 printf("vai cola\n\r");
@@ -1171,11 +1132,15 @@
     void limpando(){
         
         lcd.cls();
-        lcd.locate(3,1);
+        bot_enter = penter;
+        lcd.locate(5,1);
         printf("indo cola\n\r");
         lcd.printf("Limpando...");
+        lcd.locate(8,3);
+        lcd.printf("Parar");
         machine.clean_glue();
-        while (limpar_cola == 1){
+        movercursor(3,3,7);
+        while (limpar_cola == 1 && bot_enter==penter){
             if(emerg){
                 func = 31;
                 break;
@@ -1184,7 +1149,11 @@
                 readSerial();
                 }
             }
-        func = 30;
+        if (bot_enter!=penter){
+                machine.clean_glue();
+                machine.kill_jog();
+                func = 30;
+                }
         }
     
     //func 30
@@ -1272,7 +1241,6 @@
         int imax = 37;
         int imin = 0;
         nome = "";
-        //lcd.locate(1,1); 
         while (sair==0){
             if(emerg){
                 func = 31;