void processarBotoes() { char key = keypad.getKey(); if (key) { atividadeMillis = millis(); LOG(F("Tecla pressionada: ")); LOGLN(key); switch (indiceMenu) { case 0: { /* if((USE_RFID == true) && (configuracaoCompleta == true)) { if(key == 'E') { iniciarMillis = millis(); setFont(MEDIUM, 7, 117, 132, 255, 255, 255); myGLCD.print((char *)" Por favor identifique-se ", CENTER, 225); iniciar = true; } } else { if((key >= 48 ) && (key <= 57) && (quant_digitos < 4) && (configuracaoCompleta == true)) { updateStr(key); } else if((key == 'E') && (quant_digitos > 3)) { checkID(); } else if ((key == 'L')) // Corrigir { quant_digitos = 0; memset(ID_digitado, 0, sizeof(ID_digitado)); myGLCD.setColor(255, 255, 255); myGLCD.fillRect (350, 290, 450, 322); // Limpar senha } } break; */ if(configuracaoCompleta == true) { //Se digitou a senha e está liberado para senha atualiza a string da senha if(menu1Enter && (key >= 48 ) && (key <= 57) && (quant_digitos < 4) && (configuracaoCompleta == true)) { if (acesso.liberaSenha == true) { updateStr(key); } } else if(key == 'E') { //Se digitou a senha verifica se tem usuário com essa senha //Se não digitou a senha vai para tag if (quant_digitos > 0) { senhaDigitada = true; checkID(); } else { senhaDigitada = false; iniciarMillis = millis(); setFont(MEDIUM, 7, 117, 132, 255, 255, 255); menu1Enter = true; if (acesso.liberaTag == true && acesso.liberaSenha == true) { myGLCD.print((char *)"Identifique-se com TAG ou SENHA", CENTER, 225); iniciar = true; } else if (acesso.liberaTag) { myGLCD.print((char *)" Identifique-se com a TAG ", CENTER, 225); iniciar = true; } else if (acesso.liberaSenha) { myGLCD.print((char *)" Identifique-se com a SENHA ", CENTER, 225); } else { myGLCD.print((char *)" ACESSO NAO CONFIGURADO ", CENTER, 225); } } } else if (key == 'L') { // Corrigir quant_digitos = 0; memset(ID_digitado, 0, sizeof(ID_digitado)); myGLCD.setColor(255, 255, 255); myGLCD.fillRect (350, 290, 450, 340); // Limpar senha } } /* else { if((key >= 48 ) && (key <= 57) && (quant_digitos < 4) && (configuracaoCompleta == true)) { updateStr(key); } else if((key == 'E') && (quant_digitos > 3)) { senhaDigitada = false; checkID(); } else if ((key == 'L')) // Corrigir { quant_digitos = 0; memset(ID_digitado, 0, sizeof(ID_digitado)); myGLCD.setColor(255, 255, 255); myGLCD.fillRect (350, 290, 450, 322); // Limpar senha } } */ break; } case 1: { if(key == '1') { if((usuarioAdmin == true) && (adminMenu == true)) { adminMenu = false; if(acesso.veiculo == true) { indiceMenu = 2; clearScreen(10, 90, 799, 479); menu3(true); //Se tem tela de veículo inicia o leitor de TAG iniciar = true; } else { clearScreen(10, 186, 562, 330); menu2(false); } } else { if (acesso.qtdCanal > 0) { tipocombustivel = 0; if((calibrando == false) && (editarAcumulador == false)) { indiceMenu = 3; primeiraTela = true; clearScreen(10, 90, 799, 479); menu4(true); } else if(calibrando == true) { indiceMenu = 6; clearScreen(10, 90, 799, 479); menu7(true); } else { indiceMenu = 7; clearScreen(10, 90, 799, 479); menu8(true); } } } } else if(key == '2') { if((usuarioAdmin == true) && (adminMenu == true)) { adminMenu = false; editarAcumulador = true; clearScreen(10, 186, 562, 330); menu2(false); } else { if (acesso.qtdCanal > 1) { tipocombustivel = 1; if((calibrando == false) && (editarAcumulador == false)) { indiceMenu = 3; primeiraTela = true; clearScreen(10, 90, 799, 479); menu4(true); } else if(calibrando == true) { indiceMenu = 6; clearScreen(10, 90, 799, 479); menu7(true); } else { indiceMenu = 7; clearScreen(10, 90, 799, 479); menu8(true); } } } } else if(key == '3') { if((usuarioAdmin == true) && (adminMenu == true)) { adminMenu = false; calibrando = true; clearScreen(10, 186, 562, 330); menu2(false); } else { if (acesso.qtdCanal > 2) { tipocombustivel = 2; if((calibrando == false) && (editarAcumulador == false)) { indiceMenu = 3; primeiraTela = true; clearScreen(10, 90, 799, 479); menu4(true); } else if(calibrando == true) { indiceMenu = 6; clearScreen(10, 90, 799, 479); menu7(true); } else { indiceMenu = 7; clearScreen(10, 90, 799, 479); menu8(true); } } } } else if (key == 'C') // VOLTAR { calibrando = false; editarAcumulador = false; indiceMenu = 0; adminMenu = 0; iniciar = false; clearScreen(10, 90, 799, 479); menuPrincipal(true); } break; } case 2: { if(acesso.liberaSenha == true) { if((key >= 48 ) && (key <= 57) && (quant_digitos < 4)) { updateStr(key); } else if((key == 'E') && (quant_digitos > 3)) { senhaDigitada = true; checkID(); } else if ((key == 'L')) // LIMPAR { quant_digitos = 0; memset(ID_digitado, 0, sizeof(ID_digitado)); myGLCD.setColor(255, 255, 255); myGLCD.fillRect (350, 290, 450, 340); // Limpar senha } } if (key == 'C') // VOLTAR { indiceMenu = 0; iniciar = false; clearScreen(10, 90, 799, 479); menuPrincipal(true); } break; } case 3: { if((key >= 48 ) && (key <= 57)) { updateStr(key); } else if((key == 'E') && (quant_digitos > 0)) { switch (tela) { case 0: { valorOdometro = atol(valorDigitado); break; } case 1: { valorHorimetro = atol(valorDigitado); break; } case 2: { operacaoID = atoi(valorDigitado); break; } case 3: { talhaoID = atoi(valorDigitado); break; } case 4: { safraID = atoi(valorDigitado); break; } case 5: { rotaID = atoi(valorDigitado); break; } default: { break; } } tela++; quant_digitos = 0; if((tela == 0) || (tela == 1)) { clearScreen(10, 90, 799, 383); } else { clearScreen(10, 90, 685, 383); } menu4(true); } else if(key == 'L') { memset(valorDigitado, 0, sizeof(valorDigitado)); if((tela == 0) || (tela == 1)) { clearScreen(290, 234, 510, 282); } else { // clearScreen(322, 162, 685, 210); setFont(LARGE, 0, 0, 255, 255, 255, 255); myGLCD.print((char*)" ", 570, 220); } quant_digitos = 0; } else if (key == 'C') // VOLTAR { if(tela > 0) { tela--; voltando = true; quant_digitos = 0; memset(valorDigitado, 0, sizeof(valorDigitado)); if((tela == 0) || (tela == 1)) { clearScreen(10, 90, 799, 383); myGLCD.setBackColor(255, 255, 255); myGLCD.fillRect(690, 365, 786, 413); } else { clearScreen(10, 90, 685, 383); } menu4(true); } else { indiceMenu = 0; tela = 0; iniciar = 0; clearScreen(10, 90, 799, 479); menuPrincipal(true); } } else if (key == 'D') // Desce { switch (tela) { case 2: { if((listaIndex + 7) < listaOperacao.numOperacoes) { listaIndex += 7; menu4(false); } break; } case 3: { if((listaIndex + 7) < listaTalhao.numTalhoes) { listaIndex += 7; menu4(false); } break; } case 4: { if((listaIndex + 7) < listaSafra.numSafras) { listaIndex += 7; menu4(false); } break; } case 5: { if((listaIndex + 7) < listaRota.numRotas) { listaIndex += 7; menu4(false); } break; } default: { break; } } } else if (key == 'S') // Sobe { if(listaIndex > 0) { listaIndex -= 7; if(listaIndex < 0) { listaIndex = 0; } menu4(false); } } break; } case 4: { if(key == 'E') { indiceMenu = 9; tela = 0; clearScreen(10, 90, 799, 479); menu10(true); } else if(key == 'C') { indiceMenu = 0; tela = 0; clearScreen(10, 90, 799, 479); menuPrincipal(true); } else if (key == 'S') { // if((resumoIndex > 4) && // ((acesso.safra == true) || (acesso.rota == true))) // { // completaResumo = false; // resumoIndex = 0; // clearScreen(50, 162, 685, 415); // menu5(false); // } } else if (key == 'D') { // if((resumoIndex > 3) && (completaResumo == false) && // ((acesso.safra == true) || (acesso.rota == true))) // { // completaResumo = true; // clearScreen(50, 162, 685, 415); // menu5(false); // } } break; } case 5: { if(key == 'E') { terminado = true; } break; } case 6: { if((key == '0') && (calibracaoEmAndamento == false)) { calibracaoEmAndamento = true; clearScreen(10, 383, 799, 479); setFont(BIG, 7, 117, 132, 255, 255, 255); /* myGLCD.print((char*)"Enter -> Concluir", 10, 447); */ myGLCD.print((char*)"Confirmar", 645, 415); myGLCD.print((char*)"ENTER", 680, 447); LOGLN(F("Enchendo o aferidor")); LOG(F("Pino selecionado para a bomba: ")); LOGLN(bomba[tipocombustivel]); LOG(F("Pino A selecionado para o sensor: ")); LOGLN(sensor_A[tipocombustivel]); LOG(F("Pino B selecionado para o sensor: ")); LOGLN(sensor_B[tipocombustivel]); LOG(F("K")); LOG(tipocombustivel); LOG(F(": ")); LOGLN(K[tipocombustivel]); abastecimento(); } else if((key == 'E') && (calibracaoEmAndamento == true)) { salvarCalibracao = true; terminado = true; } else if (key == 'C') // Cancelar { if(calibracaoEmAndamento == true) { calibrando = false; terminado = true; } else { calibrando = false; indiceMenu = 1; if(usuarioAdmin == true) { adminMenu = true; } clearScreen(10, 90, 799, 479); menu2(true); } } break; } case 7: { if(((key >= 48 ) && (key <= 57)) || (key == '.')) { updateStr(key); } else if((key == 'E') && (quant_digitos > 0)) { acumulador[tipocombustivel] = atof(novoAcumulador); acumuladorSalvo.acumulador[tipocombustivel] = acumulador[tipocombustivel]; gravarAcumulador(); for(byte i = 0; i < 3; i++) { LOG(F("Acumulador ")); LOG(i); LOG(F(": ")); LOGLN(acumulador[i]); } editarAcumulador = false; indiceMenu = 0; iniciar = false; clearScreen(10, 90, 799, 479); menuPrincipal(true); } else if(key == 'L') { clearScreen(120, 234, 670, 282); quant_digitos = 0; memset(novoAcumulador, 0, sizeof(novoAcumulador)); } else if (key == 'C') // VOLTAR { memset(novoAcumulador, 0, sizeof(novoAcumulador)); editarAcumulador = false; indiceMenu = 1; if(usuarioAdmin == true) { adminMenu = true; } clearScreen(10, 90, 799, 479); menu2(true); } break; } case 8: { if(key == '1') { completou = true; respondeu = true; } else if(key == '2') { completou = false; respondeu = true; } break; } case 9: { if(informarVolume == false) { if(key == '1') { informarVolume = true; menu10(false); } else if(key == '2') { indiceMenu = 5; clearScreen(10, 90, 799, 479); menu6(true); } else if(key == 'C') { indiceMenu = 0; iniciar = false; clearScreen(10, 90, 799, 479); menuPrincipal(true); } } else { if(((key >= 48 ) && (key <= 57)) || (key == '.')) { updateStr(key); } else if(key == 'L') { quant_digitos = 0; memset(strVolumeInformado, 0, sizeof(strVolumeInformado)); myGLCD.setColor(255, 255, 255); myGLCD.fillRect (120, 234, 670, 282); // Limpar volume } else if((key == 'E') && (atof(strVolumeInformado) > 0)) { volumeInformado = atof(strVolumeInformado); indiceMenu = 5; clearScreen(10, 90, 799, 479); menu6(true); } else if(key == 'C') { indiceMenu = 0; iniciar = false; clearScreen(10, 90, 799, 479); menuPrincipal(true); } } break; } default: { break; } } } }