Pages: [1]   Go Down
Author Topic: RGB LED - Programmierfrage  (Read 382 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 5
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grüezi Wohl.

Vorwort, ich habe einen Faden gefunden mit einem RGB-LED problem, ist aber so scheint es leider geschlossen, deshalb muss ich leider einen neuen eröffnen.

Es geht um folgendes, ich habe so gut es geht nach Anleitungen, eine rgb-led gesteckt "foto" --> http://s1.directupload.net/file/d/3144/iym99m7k_jpg.htm

Korrekt nach anleitung mit "Led über 5v anzuschliessen geht irgendwie nicht, ich befolge genaustens die anleitung aber dann geht nichts."

Der Code:

Code:
int r_pin = 9;
int g_pin = 8;
int b_pin = 7;

int r_val = 0;
int g_val = 255;
int b_val = 255;

void setup(){
    pinMode(r_pin, OUTPUT);
    pinMode(g_pin, OUTPUT);
    pinMode(b_pin, OUTPUT);
}

void loop(){
    while (r_pin != 255){
        analogWrite(r_pin, r_val);
        analogWrite(g_pin, g_val);
       
        r_val++;
        g_val--;
       
        delay(20);
    }
   
    while (g_pin != 255){
        analogWrite(g_pin, g_val);
        analogWrite(b_pin, b_val);
       
        g_val++;
        b_val--;
       
        delay(20);
    }
   
    while (b_pin != 255){
        analogWrite(b_pin, b_val);
        analogWrite(r_pin, r_val);
       
        b_val++;
        r_val--;
       
        delay(20);
    }   
}

Soweit geht eig. alles... genau einmal, dannach reagiert die LED wie sie eig. sollte, jedoch nur noch komplett rot, irgendwo hab ich einen fehler und nach 2 stunden dacht ich mir, "fragste halt doch mal" smiley

Ich habs auch schon mit Zeigern probiert, auf die "r,g,b_val",  den ich kenne ähnliche fehler aus C, zwar nicht mit farben, aber mit werten die sich nicht wirklich ändern, wen man nicht korrekt mit Zeigern arbeitet.

Ich grüsse Euch
Logged

Forum Moderator
BZ (I)
Online Online
Brattain Member
*****
Karma: 266
Posts: 21665
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ich nehme mal an Du hast einen Arduino UNO.

Die Pins 7 und 8 sind keine PWM-Pins und darum funktioniert AnalogWrite() bei denen nicht.
Du mußt 3, 5, 6, 9, 10 oder 11 nehmen.
Grüße Uwe
« Last Edit: January 23, 2013, 04:09:38 pm by uwefed » Logged

Chemnitz/Saxony/Germany
Offline Offline
Full Member
***
Karma: 0
Posts: 107
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Was genau soll das Ding denn tun?

Soll da wirklich in den while()-Klausel auf die pin-Variablen geprüft werden und nicht auf die val-Variablen? Die pin-Variablen verändern sich ja nie.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 5
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

boeh ich idiot... vielen dank... man man man war gerade wieder der totale AHAAA JAAA effekt smiley-wink

Ich danke Euch smiley
« Last Edit: January 23, 2013, 03:02:53 pm by fichtknick » Logged

Pages: [1]   Go Up
Jump to: