Es sind leider nur immer zwei Farben sichtbar im PWM
die dritte blinkt nur.
egal welche Pins ich nutze,einer scheint immer pwm zu deaktiviren
Vielleicht findet jemand das Problem,wäre sehr nett
#include <IRremote.h>
#include <Wire.h>
IRrecv irrecv(8); // pin 8
decode_results results;
int R = 0;
int G = 0;
int B = 0;
void setup() {
Wire.begin(2);
Wire.onRequest(requestEvent);
Wire.onReceive(receiveEvent);
irrecv.enableIRIn();
pinMode(3, OUTPUT);
pinMode(5, OUTPUT);
pinMode(9, OUTPUT);
analogWrite(3, 0);
analogWrite(5, 0);
analogWrite(9, 0);
}
int SetLEDStrip(int RED, int GREEN, int BLUE) {
R = RED;
G = GREEN;
B = BLUE;
analogWrite(3, RED);
analogWrite(5, GREEN);
analogWrite(9, BLUE);
}
void requestEvent() {
byte buf [3];
buf [ 0 ] = R;
buf [ 1 ] = G;
buf [ 2 ] = B;
Wire.write(buf, sizeof buf);
}
void receiveEvent(int howMany) {
SetLEDStrip(Wire.read(), Wire.read(), Wire.read());
}
void loop() {
if (irrecv.decode(&results)) {
switch (results.value) {
case 0xF7C03F: // ON
SetLEDStrip(255, 255, 255);
break;
case 0xF740BF: // OFF
SetLEDStrip(0, 0, 0);
break;
}
irrecv.resume(); // Receive the next value
}
//counter = counter +1 ;
//if (counter = 50){
// Wire.requestFrom(1, 2);
// Battery_Voltage = ((100*Wire.read()+10*Wire.read())/1000.0);
// }
// if(Battery_voltage < 12.30){
// SetLEDStrip(0, 0, 0);
// }
delay(100);
}