ola garagistas!
tenho um codigo q funciona normal na ide versao 0023 do arduino
mas da erro nas versoes 1.0. pra cima
alguem pode me dar um help ?
segue o codigo:
int numero;
int ledPin = 13;
unsigned long ultimo_tempo = 0;
int aciona = false;
#define RELE1 2
#define PASSWORD 1234 // Define a senha
int RELE1_STATE = LOW;
//=======================================================
// ENTRADAS DTMF DIGITAIS
//=======================================================
int pinBit01 = 7;
int pinBit02 = 6;
int pinBit03 = 5;
int pinBit04 = 4;
int pinBitSts= 3;
int bit01 = 0;
int bit02 = 0;
int bit03 = 0;
int bit04 = 0;
int bitSts= 0;
boolean proceed = false; //Flag que habilita o funcionamento dos comandos mediante senha digitada corretamente - inicializa falso!
String tmpPass =' '; //Armazenamento da senha digitada no celular!
String password = "1234"; // Defina sua senha aqui - pode ser de quaisquer números de digitos!
void setup() {
// Serial.begin(9600);
pinMode(RELE1, OUTPUT);
pinMode(9,INPUT);
pinMode(8,INPUT);
digitalWrite(RELE1, LOW);
// Serial.println("Aguardando comando...");
}
void loop() {
bitSts= digitalRead(pinBitSts);
bit01 = digitalRead(pinBit01);
bit02 = digitalRead(pinBit02);
bit03 = digitalRead(pinBit03);
bit04 = digitalRead(pinBit04);
numero = (bit01 * 1) + (bit02 * 2) + (bit03 * 4) + (bit04 * 8);
if (bitSts == HIGH && numero < 13) {
//Serial.print("Recebido: ");
switch (numero){
case 1:
// Serial.println("1");
tmpPass += '1'; //Adiciona o número digitado em tmpPass
/* COMANDO PARA RELE1 */
if (proceed == true) // Se proceed é verdadeiro (a senha foi digitada corretamente) comando é executado!
{
RELE1_STATE = !RELE1_STATE; // Troca de estado (HIGH/LOW) cada vez que pressionar o botão.
digitalWrite(RELE1, RELE1_STATE); //Liga-desliga Relé.
}
break;
case 2:
// Serial.println("2");
tmpPass += '2'; //Adiciona o número digitado em tmpPass
break;
case 3:
// Serial.println("3");
tmpPass += '3'; //Adiciona o número digitado em tmpPass
break;
case 4:
// Serial.println("4");
tmpPass += '4'; //Adiciona o número digitado em tmpPass
break;
case 5:
// Serial.println("5");
tmpPass += '5'; //Adiciona o número digitado em tmpPass
break;
case 6:
// Serial.println("6");
tmpPass += '6'; //Adiciona o número digitado em tmpPass
break;
case 7:
// Serial.println("7");
tmpPass += '7'; //Adiciona o número digitado em tmpPass
break;
case 8:
// Serial.println("8");
tmpPass += '8'; //Adiciona o número digitado em tmpPass
break;
case 9:
// Serial.println("9");
tmpPass += '9'; //Adiciona o número digitado em tmpPass
break;
case 10:
//Serial.println("0");
tmpPass += '0'; //Adiciona o número digitado em tmpPass
break;
case 11: // Caractere '*'
// Serial.println("*");
tmpPass =' '; //Limpa para armazenar a senha novamente!
proceed = false; //Desabilita todos os comandos até que a senha seja digitada novamente!
break;
case 12: // Caractere '#'
// Serial.println("#");
tmpPass = tmpPass.trim();//Retira os espaços em branco - ver caractere '*'!
if (tmpPass == password) { // Se a senha digitada for igual a senha armazenada...
//Serial.println("Senha correta!");
proceed = true; //Habilita todos os comandos via telemóvel
}else{
// Serial.println("Senha ERRADA!");
proceed = false; //Desabilita todos os comandos via telemóvel
}
/*
//Caso queira ver a saida da senha é só descomentar
Serial.print("tmpPass= ");
Serial.println(tmpPass);
Serial.print("password= ");
Serial.println(password);
*/
break;
}
// Zeram todas as variáveis
numero = 0;
bit01 = 0;
bit02 = 0;
bit03 = 0;
bit04 = 0;
bitSts= 0;
delay (500);
}
}
sei q mudou muita coisa de uma pra outro mas nao consigo fazer esse funcionar na ide mais nova por favor me ajudem !!!
desde ja obrigado!!!
Tags:
Olá,
Copie as mensagens de erro que aparecem ao tentar compilar.
Abraço.
segue ai o erro caro Wiechert
bloqueador_com_dtmf:30: error: invalid conversion from 'char' to 'const char*'
bloqueador_com_dtmf:30: error: initializing argument 1 of 'String::String(const char*)'
bloqueador_com_dtmf.pde: In function 'void loop()':
bloqueador_com_dtmf:122: error: invalid conversion from 'char' to 'const char*'
bloqueador_com_dtmf:122: error: initializing argument 1 of 'String& String::operator=(const char*)'
bloqueador_com_dtmf:129: error: no match for 'operator=' in 'tmpPass = tmpPass.String::trim()'
D:\Users\miguel\Desktop\arduino\arduino-1.0.5-r2\hardware\arduino\cores\arduino/WString.h:83: note: candidates are: String& String::operator=(const String&)
D:\Users\miguel\Desktop\arduino\arduino-1.0.5-r2\hardware\arduino\cores\arduino/WString.h:84: note: String& String::operator=(const char*)
Olá,
Fiz as correções, agora tá compilando sem erros na IDE 1.6.0.
Abraço.
opa vlw mesmo weichert obrigadao!!!
vou testar na pratica agr vlw!!!
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por