Professional Documents
Culture Documents
boolean alarme_ligado;
boolean alarme_tocando; //para chavear o pisca
int cont;
void setup() {
pinMode(ledpin, OUTPUT); // pin
pinMode(porta, INPUT); // pin X sensor porta
digitalWrite (porta,HIGH); //ativa a porta em pull up
pinMode(sirene, OUTPUT);
pinMode(rele_setas, OUTPUT);
pinMode(bomba, OUTPUT);
pinMode(ignicao, OUTPUT);
alarme_ligado = true;
alarme_tocando = false;
cont = 0;
Serial.begin(9600);
}
void loop() {
while( Serial.available() )
{
val = Serial.read();
dados+=val;
Serial.println("\n\nLendo a porta serial: ");
Serial.println("Valor dos dados: " + val);
}
ativacao();
//Testa se tem dados na variavel e verifica se recebeu mensagem
para ativar ou desativar
acionaAlarme(); //Verifica se sirene esta ativa // ou ativa ela
chaveamentoLanterna(); // faz a lanterna do carro piscar
delay(200);
}
void chaveamentoLanterna(){
if(alarme_tocando){
cont ++;
if(cont<10)
digitalWrite(rele_setas, HIGH);
else
digitalWrite(rele_setas, LOW);
}
if(cont >28)
cont =0;
}
void ativacao(){
Serial.println("\n\nDentro do metodo Ativacao: ");
Serial.println("Valor dos dados: " + dados);
if(dados!= ""){
if( dados.equalsIgnoreCase(liga) )
ived
{
alarme_ligado = !alarme_ligado;
digitalWrite(ledpin, !digitalRead(ledpin)); // turn ON the LED
if(digitalRead(sirene) == LOW){
digitalWrite(sirene, HIGH); // Toque na sirene
digitalWrite(rele_setas, HIGH);
delay(500);
digitalWrite(sirene, LOW); // Toque na sirene
digitalWrite(rele_setas, LOW);
}
}
else {
if( dados.equalsIgnoreCase(ligar_carro) ){
s was received
// if string dado