testando

Dependencies:   mbed TextLCD2

Revision:
89:bc51c6bbe2a6
Parent:
88:bae82f6f91b9
Child:
90:388071e54291
--- a/main_PM.cpp	Mon Jun 08 16:33:46 2020 +0000
+++ b/main_PM.cpp	Mon Jun 08 17:55:53 2020 +0000
@@ -9,7 +9,7 @@
 
 //local para a declaracao de varioveis
 float t_motor = 0.002;      //delay entre o acionamento de uma bobina do motor e a outra
-float t_teclado = 0.01;     //delay entre a leitura de um botão do teclado, necessário para que um click nao gere mais de uma saída
+float t_teclado = 0.15;     //delay entre a leitura de um botão do teclado, necessário para que um click nao gere mais de uma saída
 int hor[] = {12,6,3,9};     //valores que, ao serem convertidos em binário, geram a sequência de acionamento do motor no sentido horário enviando a sequência de 0's e 1's às bobinas
 int antihor[] = {3,6,12,9}; //valores que, ao serem convertidos em binário, geram a sequência de acionamento do motor no sentido anti-horário enviando a sequência de 0's e 1's às bobinas
 int parado[] = {0,0,0,0};   //valores enviados às bobinas do motor para deixá-lo parado
@@ -468,7 +468,7 @@
             while(continuar){ // Pega o valor imputado pelo usuário
                 printf("\n%c",pega_tecla()); 
                 tecla = pega_tecla();
-                wait(1);
+                wait(t_teclado);
                 if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                     volume = multiplicador*volume + ((int)tecla-48); //  
                     lcd.printf("%c", tecla);
@@ -650,7 +650,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);//((int)tecla-48) é o valor real da tecla pressionada em inteiro    
                         lcd.printf("%c", tecla);
@@ -667,7 +667,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);
@@ -684,7 +684,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);
@@ -701,7 +701,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);
@@ -718,7 +718,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);
@@ -735,7 +735,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);}
@@ -751,7 +751,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);
@@ -768,7 +768,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);
@@ -785,7 +785,7 @@
                 while(continuar){ // Pega o valor imputado pelo usuário
                     printf("\n%c",pega_tecla()); 
                     tecla = pega_tecla();
-                    wait(1);
+                    wait(t_teclado);
                     if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                         volume = multiplicador*volume + ((int)tecla-48);    
                         lcd.printf("%c", tecla);
@@ -822,7 +822,7 @@
             while(continuar){
                 printf("\n%c",pega_tecla()); 
                 tecla = pega_tecla();
-                wait(1);
+                wait(t_teclado);
                 if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                     volume = multiplicador*volume + ((int)tecla-48);    
                     lcd.printf("%c", tecla);
@@ -886,7 +886,7 @@
             funcao_inicio();
             status_tela = "inicio";}
             
-        wait(0.5);
+        wait(t_teclado);
         tecla = pega_tecla();    
         
         //Ações para a tela forma (para definir o formato do recipiente de pega)
@@ -894,7 +894,7 @@
             funcao_pega_forma_quad();
             tipo_pega[programa] =1;
             tecla = pega_tecla();
-            wait(1);
+            wait(t_teclado);
             status_tela ="forma_quad";
             continuar = 1;
             comprimento_quad = 0;
@@ -902,13 +902,14 @@
             while(continuar){
                 printf("\n%c",pega_tecla()); 
                 tecla = pega_tecla();
-                wait(1);
+                wait(t_teclado);
                 if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                     comprimento_quad = multiplicador*comprimento_quad + ((int)tecla - 48);
                     lcd.printf("%c",tecla);
                 }
                 else if(tecla == 'A'){
                     continuar = 0;
+                    medida_lado_pega[programa] = comprimento_quad;
                     printf("Comprimento inputado!");
                     printf("\nComprimento: %d", comprimento_quad);
                 }
@@ -922,20 +923,21 @@
             funcao_pega_forma_red();
             tipo_pega[programa] = 2;
             tecla = pega_tecla();
-            wait(1);
+            wait(t_teclado);
             continuar = 1;
             diametro = 0;
             status_tela = "forma_red";
             lcd.locate(0,2);
             while(continuar){
                 tecla = pega_tecla();
-                wait(1);
+                wait(t_teclado);
                 if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                     diametro = multiplicador*diametro + ((int)tecla - 48);
                     lcd.printf("%c",tecla);
                 }
                 else if(tecla == 'A'){
                     continuar = 0;
+                    medida_lado_pega[programa] = diametro;
                     printf("Diametro inputado!");
                     printf("Diametro: %d", diametro);
                 }
@@ -963,7 +965,6 @@
             funcao_pega_forma();
             status_tela = "forma";}
         else if(tecla == 'A' && status_tela == "forma_red"){
-            medida_lado_pega[programa] = diametro;
             continuar = 1;
             status_tela ="novo";
             troca_tela(continuar, funcao_pega1, funcao_pega2, medida_lado_pega[programa], volume_pega[programa], pos_y_pega[programa],0,3);}
@@ -1004,7 +1005,7 @@
             troca_tela(continuar, funcao_pega1, funcao_pega2, medida_lado_pega[programa], volume_pega[programa], pos_y_pega[programa],0,3);}
             
         tecla = pega_tecla();
-//        wait(0.5);
+//        wait(t_teclado);
         //passando direto
         
         //Ações para a tela pos_y
@@ -1034,16 +1035,11 @@
             }
             }
             
-        tecla=pega_tecla(); 
          if(pos_x_pega[programa]!=0 && pos_y_pega[programa]!=0 && medida_lado_pega[programa]!=0 && volume_pega[programa] !=0 && tipo_pega[programa]!=0 && status_tela == "novo"){
-            funcao_solta1();
-            wait(3);
-            funcao_solta2();
-            wait(3);
-            status_tela="solta";}
-        
-        tecla=pega_tecla(); 
-        
+            status_tela="solta";
+            continuar = 1;
+            troca_tela(continuar, funcao_solta1, funcao_solta2, dimensao_solta[programa],volume_solta_9[programa], pos_y_solta[programa],0,3);}
+
         //Ações para a tela "solta", para definir informações sobre os solta's
         if(tecla == '1' && status_tela == "solta"){
             funcao_solta_dimensao();
@@ -1053,7 +1049,7 @@
             lcd.locate(0,2);
             while(continuar){
                 tecla = pega_tecla();
-                wait(1);
+                wait(t_teclado);
                 if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                     diametro_solta = multiplicador*diametro_solta + ((int)tecla - 48);
                     lcd.printf("%c",tecla);
@@ -1080,7 +1076,7 @@
             lcd.locate(0,2);
             while(continuar){
                 tecla = pega_tecla();
-                wait(1);
+                wait(t_teclado);
                 if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                     volume_solta = multiplicador*volume_solta + ((int)tecla - 48);
                     lcd.printf("%c",tecla);
@@ -1255,7 +1251,7 @@
                 continuar=1;
                 while(continuar){
                 tecla = pega_tecla();
-                wait(1);
+                wait(t_teclado);
                 if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
                     nome = multiplicador*nome + ((int)tecla - 48);
                     lcd.cls();