#include <IRremote.h>
#define first_key 48 //48703
#define second_key 24 // 58359
int receiver_pin = 8;
int brightness = 0;
int fadeAmount = 5;
int led_pin = 6;
int led[] = {0, 0};
IRrecv receiver(receiver_pin);
decode_results output;
void blink3()
{
for (int count = 0; count < 3; count++)
{
digitalWrite(led_pin, brightness);
brightness = 250;
delay(500);
digitalWrite(led_pin, brightness);
brightness = 0;
delay(500);
}
}
void setup()
{
Serial.begin(9600);
receiver.enableIRIn();
pinMode(led_pin, OUTPUT);
}
void loop() {
if (receiver.decode()) {
unsigned int value = receiver.decodedIRData.command ;
switch (value) {
case first_key:
if (led[1] == 1) {
// digitalWrite(led_pin, brightness);
analogWrite(led_pin,brightness);
brightness = 0;
led[1] = 0;
} else {
blink3();
// digitalWrite(led, brightness);
analogWrite(led_pin,brightness);
brightness = brightness + fadeAmount;
if (brightness <= 0 || brightness >= 255) {
fadeAmount = -fadeAmount;
}
delay(30);
led[1] = 1;
}
break;
case second_key:
if (led[2] == 1) {
// digitalWrite(led_pin, brightness);
analogWrite(led_pin,brightness);
brightness = 0;
led[2] = 0;
} else {
// digitalWrite(led, brightness);
analogWrite(led_pin,brightness);
brightness = brightness + fadeAmount;
if (brightness <= 0 || brightness >= 255) {
fadeAmount = -fadeAmount;
}
delay(30);
led[2] = 1;
}
break;
}
Serial.println(value);
receiver.resume();
}
}