// setando os pins dos sensores e autuador
const int switchPin1 = 6;
const int switchPin2 = 5;
const int switchPin3 = 3;
const int ledPin = 13;
//variável para ler o status dos switches
int switchState1 = 0;
int switchState2 = 0;
int switchState3 = 0;
int buttonCount = 0;
void setup() {
Serial.begin(115200);
Serial.println("Ligue cada switch para simular os sensores, o led indica o autuador");
Serial.println("");
Serial.println("O primeiro switch (pin6) é o sensor de aproximação");
Serial.println("O segundo switch (pin5) é o sensor de ruído");
Serial.println("O terceiro switch (pin3) é o desarme");
Serial.println("-------- iniciando programa --------");
Serial.println("");
pinMode(ledPin, OUTPUT);
pinMode(switchPin1, INPUT_PULLUP);
pinMode(switchPin2, INPUT_PULLUP);
pinMode(switchPin3, INPUT_PULLUP);
}
void loop() {
// lê o estado dos switches
switchState1 = digitalRead(switchPin1);
switchState2 = digitalRead(switchPin2);
switchState3 = digitalRead(switchPin3);
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:
if (switchState1 == HIGH) {
Serial.println("Sensor de aproximação acionado, conta +1 no contador");
buttonCount++;
Serial.println(buttonCount);
} else {
buttonCount = 0;
}
if (switchState2 == HIGH) {
Serial.println("Sensor de ruído acionado, conta +1 no contador");
buttonCount++;
Serial.println(buttonCount);
} else {
buttonCount = 0;
}
delay(500);
if (switchState3 == HIGH) {
Serial.println("Desarme acionado, zera contador");
buttonCount = 0;
} else {
}
if (buttonCount >= 2) {
digitalWrite(ledPin, HIGH);
Serial.println("Notificação enviada");
} else {
// turn LED off:
digitalWrite(ledPin, LOW);
buttonCount = 0;
}
delay(1000);
buttonCount = 0;
Serial.println("-------------------");
Serial.println("Reiniciando sistema");
Serial.println("Zerando contador");
Serial.println("-------------------");
Serial.println("");
}