/******************************************************************************* ** * Projeto 78 - Interrupção excterna com sensor de toque * Autor: Angelo Luis Ferreira * Data: 13/02/2020 (dd/mm/AA) * http://squids.com.br/arduino * *******************************************************************************/ // --- Mapeamento de Hardware --- const byte sensorTouch = 2; //conexão do sinal do sensor capacitivo const byte pinOrange = 4; //led de saída (larranja) const byte pinGreen = 11; //led de saída (verde) const byte pinRed = 12; //led de saída (vermelho) // --- Variáveis Globais --- boolean state = 0; // --- Configurações Iniciais --- void setup() { pinMode(sensorTouch, INPUT); //configura entrada digital para o sensor pinMode(pinOrange, OUTPUT); //saída para o led onboard pinMode(pinGreen, OUTPUT); //saída para o led onboard pinMode(pinRed, OUTPUT); //saída para o led onboard // -- Configura Interrupção Externa int 0 -- pino 2 Arduino // Chama função "extInt", quando houver o toque no sensor attachInterrupt(0, extInt, CHANGE); } //end setup // --- Loop Infinito --- void loop() { // liga ou desliga o led laranja if(state){ digitalWrite(pinOrange,HIGH); //inverte o estado do LEP delay(10); } else digitalWrite(pinOrange, LOW); // pisca leds verde e vermelho digitalWrite(pinGreen, !digitalRead(pinGreen)); delay(50); digitalWrite(pinRed, !digitalRead(pinRed)); delay(50); } //end loop // --- função a ser executada quando houver interrupção --- void extInt() { state = !state; }