Hi friends ,
i am new to the arduino and tried to solve the code myself but i am stuck at this point .
so what i want to do in this project is to control 6 Pinouts ( Lets say LEDS) from IR remote and to add some effects like i did below in my code . but the problem i am facing is when i press the code the effect just work once , how to make it loop until i press next button
#include <Arduino.h>
#include <IRremote.hpp>
const int IR_RECEIVE_PIN = 9;
int de=50;
int L1 = 3;
int L2 = 4;
int L3 = 5;
int L4 = 6;
int L5 = 7;
int L6 = 8;
void setup()
{
Serial.begin(9600);
IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK); // Start the receiver
pinMode(L1, OUTPUT);
pinMode(L2, OUTPUT);
pinMode(L3, OUTPUT);
pinMode(L4, OUTPUT);
pinMode(L5, OUTPUT);
pinMode(L6, OUTPUT);
}
void loop(){
if (IrReceiver.decode())
{
Serial.println(IrReceiver.decodedIRData.decodedRawData, HEX);
IrReceiver.printIRResultShort(&Serial);
switch(IrReceiver.decodedIRData.decodedRawData)
{
case 0x23DCFD01:
Serial.println("EFFECT 1");
digitalWrite(L1,1);
digitalWrite(L2,0);
digitalWrite(L3,0);
digitalWrite(L4,0);
digitalWrite(L5,0);
digitalWrite(L6,0);
//1
delay(de);
digitalWrite(L1,0);
digitalWrite(L2,1);
digitalWrite(L3,0);
digitalWrite(L4,0);
digitalWrite(L5,0);
digitalWrite(L6,0);
//2
delay(de);
digitalWrite(L1,0);
digitalWrite(L2,0);
digitalWrite(L3,1);
digitalWrite(L4,0);
digitalWrite(L5,0);
digitalWrite(L6,0);
//3
delay(de);
digitalWrite(L1,0);
digitalWrite(L2,0);
digitalWrite(L3,0);
digitalWrite(L4,1);
digitalWrite(L5,0);
digitalWrite(L6,0);
//4
delay(de);
digitalWrite(L1,0);
digitalWrite(L2,0);
digitalWrite(L3,0);
digitalWrite(L4,0);
digitalWrite(L5,1);
digitalWrite(L6,0);
//5
delay(de);
digitalWrite(L1,0);
digitalWrite(L2,0);
digitalWrite(L3,0);
digitalWrite(L4,0);
digitalWrite(L5,0);
digitalWrite(L6,1);
//6
delay(de);
case 0x6D92FD01:"
Serial.println("TURN OFF ALL LEDS");
digitalWrite(L1,0);
digitalWrite(L2,0);
digitalWrite(L3,0);
digitalWrite(L4,0);
digitalWrite(L5,0);
digitalWrite(L6,0);
delay(2000);
break;
default:
break;
}
IrReceiver.resume(); // Enable receiving of the next value
}
}
thanks in advance for your help