I have a problem, i can't normal start effect fade.
all code:
#include <IRremote.h>
int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;
uint8_t R, G, B;
///lista przycisków na pilocie
#define KEY_Ch- 0xFFA25D
#define KEY_Ch 0xFF629D
#define KEY_Ch+ 0xFFE21D
#define KEY_Ivv 0xFF22DD
#define KEY_vvI 0xFF02FD
#define KEY_vII 0xFFC23D
#define KEY_minus 0xFFE01F
#define KEY_plus 0xFFA857
#define KEY_EQ 0xFF906F
#define KEY_0 0xFF6897
#define KEY_100 0xFF9867
#define KEY_200 0xFFB04F
#define KEY_1 0xFF30CF
#define KEY_2 0xFF18E7
#define KEY_3 0xFF7A85
#define KEY_4 0xFF10EF
#define KEY_5 0xFF38C7
#define KEY_6 0xFF5AA5
#define KEY_7 0xFF42BD
#define KEY_8 0xFF4AB5
#define KEY_9 0xFF52AD
//koniec listy
#define ANODA 1
#define KATODA 0
#define COMMON_PIN KATODA
#define DLY delay(200)
//lista kolorów
//aby wyświetlic użyj setRGBcolor( KOLOR );
#define RED 0xFF0000
#define GREEN 0x00FF00
#define BLUE 0x0000FF
#define CYAN 0x00AEC3
#define PINK 0xFF007F
#define ORANGE 0xFF4400
#define YELLOW 0xFFC600
#define LIME 0x0FFF00
#define FIRE 0xFF5300
#define VIOLET 0xA900FF
#define WHITE 0xFFFFFF
//koniec listy
void setup() {
Serial.begin(9600);
irrecv.enableIRIn();
irrecv.blink13(true);
pinMode(11, OUTPUT); //R
pinMode(10, OUTPUT); //G
pinMode(9, OUTPUT); //B
irrecv.enableIRIn(); // Start the receiver
}
void loop() {
if (irrecv.decode(&results)){
Serial.println(results.value, HEX);
irrecv.resume();
}
R = 0; G = 0; B = 0;
if (irrecv.decode(&results)) {
if(results.value == KEY_0) setRGBcolor( RED );
else if(results.value == KEY_100) setRGBcolor( GREEN );
else if(results.value == KEY_1) setRGBcolor( YELLOW );
else if(results.value == KEY_200) setRGBcolor( BLUE );
else if(results.value == KEY_2) setRGBcolor( CYAN );
else if(results.value == KEY_3) setRGBcolor( PINK );
else if(results.value == KEY_4) setRGBcolor( ORANGE );
else if(results.value == KEY_5) setRGBcolor( YELLOW );
else if(results.value == KEY_6) setRGBcolor( LIME );
else if(results.value == KEY_7) setRGBcolor( FIRE );
else if(results.value == KEY_8) setRGBcolor( VIOLET );
else if(results.value == KEY_9) setRGBcolor( WHITE );
else if(results.value == KEY_Ch) setRGBcolor( 0x000000 );
else if(results.value == KEY_minus) {
while(1){
irrecv.resume();
for( int i=0; i < 255; i++) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=0; i < 255; i++) {
R = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=0; (i < 255); i++) {
B = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
R = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
B = i;
G = 255 - i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
}
}
delay(30);
irrecv.resume();
}
}
void setRGB( uint8_t r, uint8_t g, uint8_t b){
if( !COMMON_PIN ) {
analogWrite(11, r);
analogWrite(10, g);
analogWrite(9, b);
}
else if( COMMON_PIN ) {
analogWrite(11, 255 - r);
analogWrite(10, 255 - g);
analogWrite(9, 255 - b);
}
}
void setRGBcolor( uint32_t rgb){
setRGB( rgb >> 16, rgb >> 8, rgb);
}
cod of fade
else if(results.value == KEY_minus) {
while(1){
irrecv.resume();
for( int i=0; i < 255; i++) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=0; i < 255; i++) {
R = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=0; (i < 255); i++) {
B = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
R = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
B = i;
G = 255 - i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
for( int i=255; (i >= 0); i--) {
G = i;
setRGB( R, G, B);
delay(30);
if (irrecv.decode(&results)) return;
}
}
}
delay(30);
irrecv.resume();
Thanks for help.