Guten Abend zusammen,
ich wende mich hier im Forum zum ersten mal an die Community und hoffe ihr könnt mir helfen.
Mittlerweile habe ich etliche Stunden damit verbracht meinen Arduino Uno Code ans laufen zu bringen, leider vergebens.
Mein Projekt: RGB-LED Streifen angesteuert über Musik Spectrum Analyse mit dem MSGEQ7 Chip.
Funktion 1: Weißlicht- AN/AUS
Funktion 2: MSGEQ7 - AN/AUS
Steuerung über IR-Remote via Tastendruck
Der Code für "Funktion 1" klappt über die Remote. Allerdings "Funktion 2" bekomme ich nicht über die Remote gesteuert bzw beide Funktionen zusammen in den Code zu verpacken.....
Meine Programmier Kenntnisse sind noch auf Anfängerniveau und ich Hoffe ihr könnt mir ein paar Tipps geben um zu Lösung zu kommen.
hier beiden meine Codes:
Funktion 1:
#include <IRremote.h>
int bright;
int before;
int ledPinR = 10;
int ledPinG = 9;
int ledPinB = 11;
int RECV_PIN = 3; //data out of IR receiver connects to pin 11
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup(){
irrecv.enableIRIn(); // start the receiver
before=0; //LED is turned off
pinMode(ledPinR,OUTPUT);
pinMode(ledPinG,OUTPUT);
pinMode(ledPinB,OUTPUT);
}
void loop() {
if (irrecv.decode(&results)) {
if (results.value==0xFFA25D){ //Code to turn the LED ON/OFF- taste
if(before==0){ // if the LED was turned off, then we turn it on
digitalWrite(ledPinR,HIGH);
digitalWrite(ledPinG,HIGH);
digitalWrite(ledPinB,HIGH);
before=1; //LED is now turned on
}
else{
digitalWrite(ledPinR,LOW);
digitalWrite(ledPinG,LOW);
digitalWrite(ledPinB,LOW);
;
//if the LED was turned on, then we turn it off
before=0;
bright=255;
}}
irrecv.resume();
}}
Funktion 2:
int analogPin = 0;
int strobePin = 5;
int resetPin = 6;
int ledPinR = 9;
int ledPinG = 10;
int ledPinB = 11;
int spectrumValue[7];
int filter = 260;
void setup() {
Serial.begin(9600);
pinMode(analogPin, INPUT);
pinMode(strobePin, OUTPUT);
pinMode(resetPin, OUTPUT);
pinMode(ledPinR, OUTPUT);
pinMode(ledPinB, OUTPUT);
pinMode(ledPinG, OUTPUT);
digitalWrite(resetPin, LOW);
digitalWrite(strobePin, HIGH);
}
void loop() {
digitalWrite(resetPin, HIGH);
digitalWrite(resetPin, LOW);
for (int i = 0; i < 7; i++) {
digitalWrite(strobePin, LOW);
delayMicroseconds(30);
spectrumValue = analogRead(analogPin);
_ if (spectrumValue < filter) {_
_ spectrumValue = 0;
}
spectrumValue = map(spectrumValue*, 0, 750, 0, 255);*
* digitalWrite(strobePin, HIGH);
Serial.print(spectrumValue);
Serial.print(" ");
}
int redvalue = (spectrumValue[0] + spectrumValue[1] + spectrumValue[2]);
int greenvalue = (spectrumValue[3] + spectrumValue[4]);
int bluevalue = (spectrumValue[5] + spectrumValue[6]);
if (redvalue > 255)
{
redvalue = 255;
}
if (greenvalue > 255)
{
greenvalue = 255;
}
if (bluevalue > 255)
{
bluevalue = 255;
}*_
* Serial.print(redvalue);*
* Serial.print(" ");*
* Serial.print(greenvalue);*
* Serial.print(" ");*
* Serial.print(bluevalue);*
* Serial.println();*
* analogWrite(ledPinR, redvalue); *
* analogWrite(ledPinG, greenvalue);*
* analogWrite(ledPinB, bluevalue);*
}