I have a problem
i think i have done everything right
though there is still something wrong
when i press 9 in the ir remote and i want a 7 segment LED to diplay the number 9, but it wont.
same goes with the number 8.
the number 8 and 9 are the two last if statements
but the rest of the numbers, like 4 and 6 worked perfectly fine
here's the code
#include <IRremote.h>
int RECV_PIN = 11;
int ledPin = 2;
int ledPin2 = 3;
int ledPin3 = 4;
int ledPin4 = 5;
int ledPin5 = 6;
int ledPin6 = 7;
int ledPin7 = 8;
int ledPin8 = 9;
boolean ledState = LOW; // ledState to store the state of LED
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup(){
Serial.begin(9600);
irrecv.enableIRIn();
pinMode(ledPin, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(ledPin4, OUTPUT);
pinMode(ledPin5, OUTPUT);
pinMode(ledPin6, OUTPUT);
pinMode(ledPin7, OUTPUT);
pinMode(ledPin8, OUTPUT);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin8, LOW);
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
//once receive code from power button, the state of LED is changed from HIGH
if(results.value == 0xFD00FF){
ledState = !ledState;
digitalWrite(ledPin,ledState);
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin3,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin5,ledState);
digitalWrite(ledPin6,ledState);
digitalWrite(ledPin7,ledState);
digitalWrite(ledPin8,ledState);
}
irrecv.resume();
if(results.value == 0xFD08F7){
ledState = !ledState;
digitalWrite(ledPin,ledState);
digitalWrite(ledPin7,ledState);
}
irrecv.resume();
if(results.value == 0xFD8877){
ledState = !ledState; //reverse
digitalWrite(ledPin,ledState);
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin5,ledState);
digitalWrite(ledPin6,ledState);
}
irrecv.resume();
if(results.value == 0xFD48B7){
ledState = !ledState; //reverse
digitalWrite(ledPin,ledState);
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin6,ledState);
digitalWrite(ledPin7,ledState);
}
irrecv.resume();
if(results.value == 0xFD28D7){
ledState = !ledState; //reverse
digitalWrite(ledPin,ledState);
digitalWrite(ledPin3,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin7,ledState);
}
irrecv.resume();
if(results.value == 0xFDA857){
ledState = !ledState; //reverse
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin3,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin6,ledState);
digitalWrite(ledPin7,ledState);
}
irrecv.resume();
if(results.value == 0xFD6897){
ledState = !ledState; //reverse
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin3,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin5,ledState);
digitalWrite(ledPin6,ledState);
digitalWrite(ledPin7,ledState);
}
irrecv.resume();
if(results.value == 0xFD18E7){
ledState = !ledState; //reverse
digitalWrite(ledPin,ledState);
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin7,ledState);
}
irrecv.resume();
if(results.value == 0xFD9867){
ledState = !ledState;
digitalWrite(ledPin,ledState);
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin3,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin5,ledState);
digitalWrite(ledPin6,ledState);
digitalWrite(ledPin7,ledState);
}
irrecv.resume();
if(results.value == 0xFD9867){
ledState = !ledState;
digitalWrite(ledPin,ledState);
digitalWrite(ledPin2,ledState);
digitalWrite(ledPin3,ledState);
digitalWrite(ledPin4,ledState);
digitalWrite(ledPin6,ledState);
digitalWrite(ledPin7,ledState);
}
}
}
pls tell me the mistake
P.S I posted in installation and troubleshooting and this is just a re post of the one i posted there
except its now on the correct page