Hola!
Tengo puesto un arduino mini pro como controlador de un enchufe "mando a distancia".
Vamos, lo que viene a ser poder apagar el ventilador a las 5 la mañana con un mando IR, sin tener que levantarte ![]()
Como podéis imaginar, el código es muy simple:
#include <NECIRrcv.h>
#define IRPIN 8 // Pin donde esta conectado el sensor IR
#define n1 0xE619BD02
#define n2 0xE619BD02
NECIRrcv ir(IRPIN) ;
bool encendido=false;
void setup()
{
pinMode(9,OUTPUT);
Serial.begin(9600) ;
ir.begin() ;
}
void loop(){
unsigned long ircode ;
while (ir.available()) {
ircode = ir.read() ;
//Serial.println(ircode);
if(ircode==n1){
if(encendido){
digitalWrite(9,LOW);
encendido=false;
}
else{
digitalWrite(9,HIGH);
encendido=true;
}
}
}
}
Pero tengo dudas respecto a si es bueno o no , dejar el Arduino 10 - 12 horas todos los días ejecutando básicamente "while (ir.available())" para cuando yo pulse el mando.
¿Creéis que sería mejor ponerlo en modo sleept, y hacer una interrupción para cuando pulse el mando? Nunca he puesto el Arduino en modo sleep hasta ahora. Pero imagino que será mejor tenerlo así que ejecutando código todo el rato.
Un saludo y gracias