testando

Dependencies:   mbed TextLCD2

Revision:
68:b36bb895c8c1
Parent:
67:ecd4feb40f94
Child:
69:8c7e1da9d315
--- a/main_PM.cpp	Tue Jun 02 14:51:06 2020 +0000
+++ b/main_PM.cpp	Tue Jun 02 15:24:48 2020 +0000
@@ -275,6 +275,9 @@
         if(tecla =='1' && status_tela =="salvo_confirmacao"){  
             funcao_salvo_agree_pos_aviso(); //Tela de aviso ao usuário que a pega se deslocará na posição aduequada
             wait(3);
+            status_tela = "salvo_confirmacao_pega_agree";
+            }
+        if(tecla == 'A' && status_tela =="salvo_confirmacao_pega_agree"){
             while(coord_x < pos_x_pega[programa]){ //posicionar no local da pega salvo; - se for menor o valor da referencia, gira no sentido horário para aumentar
                 mov_x_mais();                
             }  
@@ -289,9 +292,18 @@
             }      
             funcao_salvo_agree_pos_certo(); //Tela para o usuário confirmar se é essa a posição de fato da pega 
             status_tela="salvo_pos_certo_pega" ;}
+        else if(tecla == 'B' && status_tela=="salvo_confirmacao_pega_agree"){
+            funcao_salvo1();
+            wait(1);
+            funcao_salvo2();
+            programa = 1;
+            status_tela = "salvo";}
         else if(tecla =='2' && status_tela =="salvo_confirmacao"){
              funcao_salvo_agree_solta_aviso();   //posicionar no local de solta para confirmação; (motor -> programa.pos_x_solta e motor -> programa.pos_y_solta)
              wait(3);
+             status_tela = "salvo_confirmacao_solta_agree";
+            }
+        if(tecla == 'A' && status_tela =="salvo_confirmacao_solta_agree"){  
              while(coord_x < pos_x_solta[programa]){ //posicionar no local da pega salvo; - se for menor o valor da referencia, gira no sentido horário para aumentar
                 mov_x_mais();                
              }  
@@ -305,7 +317,13 @@
                 mov_y_menos();    
              }     
              funcao_salvo_agree_pos_certo();
-             status_tela = "salvo_pos_certo_solta";}
+             status_tela = "salvo_pos_certo_solta";}            
+        else if(tecla == 'B' && status_tela=="salvo_confirmacao_solta_agree"){
+            funcao_salvo1();
+            wait(1);
+            funcao_salvo2();
+            programa = 1;
+            status_tela = "salvo";}     
         else if(tecla =='3' && status_tela =="salvo_confirmacao"){
              funcao_salvo_agree_pega_vol();   //Função que imprime na tela do usuário que ele deve dar entreda no volume
              continuar = 1;
@@ -329,8 +347,16 @@
             }                                  
             status_tela="salvo_conf_vol_pega";}     
         else if(tecla =='4' && status_tela =="salvo_confirmacao"){
-             funcao_salvo_agree_solta_vol();
-             //volumes configurados por cada pipeta. (programa.vol_solta_pipeta)
+             funcao_salvo_agree_solta_vol();  //volumes configurados por cada pipeta. (programa.vol_solta_pipeta)
+             lcd.locate(3,0);lcd.printf("%f",volume_solta_1[programa]);
+             lcd.locate(8,0);lcd.printf("%f",volume_solta_2[programa]);
+             lcd.locate(13,0);lcd.printf("%f",volume_solta_3[programa]);
+             lcd.locate(3,1);lcd.printf("%f",volume_solta_4[programa]);
+             lcd.locate(8,2);lcd.printf("%f",volume_solta_5[programa]);
+             lcd.locate(13,3);lcd.printf("%f",volume_solta_6[programa]);
+             lcd.locate(3,1);lcd.printf("%f",volume_solta_7[programa]);
+             lcd.locate(8,2);lcd.printf("%f",volume_solta_8[programa]);
+             lcd.locate(13,3);lcd.printf("%f",volume_solta_9[programa]);                     
              status_tela="salvo_conf_vol_solta";}
         else if(tecla =='B' && status_tela =="salvo_confirmacao"){ 
             funcao_salvo1();
@@ -410,6 +436,11 @@
             status_tela = "salvo_confirmacao";
             }//salva essa posição como correta
         else if(tecla =='2' && status_tela =="salvo_pos_certo_solta"){
+            lcd.cls();
+            funcao_solta_pos_x();
+            lcd.printf("Ponha a pega em x/y");
+            lcd.locate(0,3);
+            lcd.printf("      B-Voltar      ");
             continuar = 1; //Inicia o loop de posicionamento
             while(continuar){
                  tecla = pega_tecla(); // pegla a tecla apertada pelo usuário para sair do loop
@@ -427,13 +458,18 @@
                     lcd.printf("Y: %4.1f", coord_y);} //Printa para o usuário isso
                 if(tecla=='A'){
                     continuar = 0;
-                    pos_x_pega[programa] = coord_x;
-                    pos_y_pega[programa] = coord_y;
+                    pos_x_solta[programa] = coord_x;
+                    pos_y_solta[programa] = coord_y;
+                    lcd.cls();
                     lcd.printf("Posicao de x e y salva!");
                     printf("Posicao X: %4.1f", coord_x);
                     printf("Posicao Y: %4.1f", coord_y);
+                    funcao_salvo_agree1();
+                    wait(1);
+                    funcao_salvo_agree2(); 
+                    status_tela = "salvo_confirmacao";
                 }
-            }    
+            }
         }
         else if(tecla =='B' && status_tela =="salvo_pos_certo_solta"){             
             funcao_salvo_agree1();
@@ -448,7 +484,164 @@
             lcd.locate(18,2);lcd.printf("OK");    
             status_tela = "salvo_confirmacao";        
             }//salva essa posição como correta
-        else if(tecla =='2' && status_tela =="salvo_conf_vol_solta"){}
+        else if(tecla =='2' && status_tela =="salvo_conf_vol_solta"){
+            funcao_salvo_vol_solta_modifica();
+            wait(3);
+            funcao_salvo_agree_solta_vol();
+             lcd.locate(3,0);lcd.printf("%f",volume_solta_1[programa]);
+             lcd.locate(8,0);lcd.printf("%f",volume_solta_2[programa]);
+             lcd.locate(13,0);lcd.printf("%f",volume_solta_3[programa]);
+             lcd.locate(3,1);lcd.printf("%f",volume_solta_4[programa]);
+             lcd.locate(8,2);lcd.printf("%f",volume_solta_5[programa]);
+             lcd.locate(13,3);lcd.printf("%f",volume_solta_6[programa]);
+             lcd.locate(3,1);lcd.printf("%f",volume_solta_7[programa]);
+             lcd.locate(8,2);lcd.printf("%f",volume_solta_8[programa]);
+             lcd.locate(13,3);lcd.printf("%f",volume_solta_9[programa]); 
+            if(tecla=='1' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(3,0); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_1[programa]=volume;
+                    }
+                }
+            if(tecla=='2' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(8,0); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_2[programa]=volume;
+                    }
+                }
+            if(tecla=='3' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(13,0); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_3[programa]=volume;
+                    }
+                }
+            if(tecla=='4' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(3,1); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_4[programa]=volume;
+                    }
+                }
+            if(tecla=='5' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(8,1); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_5[programa]=volume;
+                    }
+                }
+            if(tecla=='6' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(13,1); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    else if(tecla == 'A'){
+                         volume_solta_6[programa]=volume;
+                        }
+                    }
+                }
+            if(tecla=='7' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(3,2); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_7[programa]=volume;
+                    }
+                }
+            if(tecla=='8' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(8,2); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_8[programa]=volume;
+                    }
+                }
+            if(tecla=='9' && status_tela=="salvo_conf_vol_solta"){
+                 continuar = 1;
+                 multiplicador = 10;
+                 lcd.locate(13,2); 
+                while(continuar){ // Pega o valor imputado pelo usuário
+                    printf("\n%c",pega_tecla()); 
+                    tecla = pega_tecla();
+                    wait(1);
+                    if(tecla!= 'A' && tecla!='B' && tecla!= 'k'){
+                        volume = multiplicador*volume + ((int)tecla-48);    
+                        lcd.printf("%c", tecla);
+                    }
+                    else if(tecla == 'A'){
+                        volume_solta_9[programa]=volume;
+                    }
+                }
+            }
         else if(tecla =='B' && status_tela =="salvo_conf_vol_solta"){             
             funcao_salvo_agree1();
             wait(1);