Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <IRremote.h>
- #define pirPin 2 // Pino para o PIR
- #define lamp1Pin 3 // Define o pino para a lampada 1
- #define lamp2Pin 4 // Define o pino para a lampada 2
- #define lamp3Pin 5 // Define o pino para a lampada 3
- #define lamp4Pin 6 // Define o pino para a lampada 4
- #define lamp5Pin 7 // Define o pino para a lampada 5
- #define lamp6Pin 8 // Define o pino para a lampada 6
- int RECV_PIN = 11; // Entrada do sensor de Infra Red Remote Control
- float armazenavalor; // Variavel para guardar valor lido do Remote Control
- IRrecv irrecv(RECV_PIN); // Função para receber Remote Control
- decode_results results; // Decodifica o resultado
- void setup()
- {
- pinMode(pirPin, INPUT); // Define o Pino PIR com entrada
- pinMode(lamp1Pin,OUTPUT); // Define o pino lamp1Pin como saida
- pinMode(lamp2Pin, OUTPUT); // Define o pino lamp2Pin como saída
- pinMode(lamp3Pin, OUTPUT); // Define o pino lamp3Pin como saída
- pinMode(lamp4Pin, OUTPUT); // Define o pino lamp4Pin como saída
- pinMode(lamp5Pin, OUTPUT); // Define o pino lamp5Pin como saída
- pinMode(lamp6Pin, OUTPUT); // Define o pino lamp6Pin como saída
- Serial.begin(9600); // Inicialisa o monitor serial
- irrecv.enableIRIn(); // Inicializa o receptor IR
- }
- // --------------------------------- loop ----------------------------
- void loop()
- {
- int pirVal = digitalRead(pirPin); // Variavel para "status"do PIR
- if (irrecv.decode(&results)) // recebe códigos do RC
- {
- Serial.println(results.value, HEX); // Imprime valor recebido na serial
- armazenavalor = (results.value); // Salva este valor em armazena valor
- // ----------------------------- lamp1--------------------------------
- if (armazenavalor == 0x90108) // verifica se a tecla 12 foi acionada
- {
- digitalWrite(lamp1Pin,HIGH); // Acende lampada 1
- }
- if (armazenavalor == 0x88108) // verifica se a tecla 11 foi acionada
- {
- digitalWrite(lamp2Pin, LOW); // Apaga lampada 1
- }
- // ----------------------------- lamp2 --------------------------------
- if (armazenavalor == 0xD210C) // verifica se a tecla 10 foi acionada
- {
- digitalWrite(lamp2Pin, HIGH); // Acende lampada 2
- }
- if (armazenavalor == 0x48108) //verifica se a tecla 9 foi acionada
- {
- digitalWrite(lamp2Pin, LOW); // Apaga lampada 2
- }
- // ----------------------------- lamp3 --------------------------------
- if (armazenavalor == 0xE0108) // Verifica se a tecla 8 foi acionada
- {
- digitalWrite(lamp3Pin, HIGH); // Acende lampada 3
- }
- if (armazenavalor == 0x10108) // Verifica se a tecla 7 foi acionada
- {
- digitalWrite(lamp3Pin, LOW); // Apaga lampada 3
- }
- // ---------------------------- lamp4 --------------------------------
- if (armazenavalor == 0xa0108) // Verifica se a tecla 5 foi acionada
- {
- digitalWrite(lamp4Pin, HIGH); // Acende lampada 4
- }
- if (armazenavalor == 0x60108) // Verifica se a tecla 6 foi acionada
- {
- digitalWrite(lamp4Pin, LOW); // Apaga lampada 4
- }
- // ----------------------------- lamp5 --------------------------------
- if (armazenavalor == 0xC0108) // Verifica se a tecla 3 foi acionada
- {
- digitalWrite(lamp5Pin, HIGH); // Acende lampada 5
- }
- if (armazenavalor == 0x20108) // Verifica se a tecla 4 foi acionada
- {
- digitalWrite(lamp5Pin, LOW); // Apaga lampada 5
- }
- // ----------------------------- lamp6 --------------------------------
- if (armazenavalor == 0x80108) // Verifica se a tecla 1 foi acionada
- {
- digitalWrite(lamp6Pin, HIGH); // Acende lampada 6
- }
- if (armazenavalor == 0x40108) // Verifica se a tecla 2 foi acionada
- {
- digitalWrite(lamp6Pin, LOW); // Apaga lampada 6
- }
- // --------------------------------------------------------------------------------
- irrecv.resume(); //Le o próximo valor // le proximo valor do RC
- }
- if(pirVal == 1) // Se PIR detectou movimento
- { // Faça
- Serial.println("Motion Detected"); // Msg no serial
- digitalWrite(lamp2Pin, HIGH); // Aqui acende a lampada
- }
- else // Se PIR detectou movimento
- digitalWrite(lamp2Pin, LOW); // Aqui acende a lampada
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement