Forum: Mikrocontroller und Digitale Elektronik Ist das machbar ?


von detmar (Gast)


Lesenswert?

Hallo,

da ich kein profi in Sachen programmieren bin, stelle ich das hiermal 
ein.
Also die Vorrausetzungen sind folgendermaßen:
vorhanden eine beleuchtung mit 4 LED-Stripes, die als Lauflicht von 
einem
tiny2313 (soll bleiben) angesteurt werden. Natürlich nur wenn finster.
jetzt schalten die LED an oder aus, sollen aber langsam heller und dann 
dunkler werden. 4 PWM-Kanäle sind ja vorhanden, wie kann man
das anstellen, das wenn die 1.LED max ist, die 2. dann mit dem leuchten 
beginnt...usw bis alle an sind, dann das ganze anders rum.
Bisher habe ich nur einfache Schalt-Aufgaben programmiert.
Schön wäre mal ein Code-Schnipsel.

Schön Sonntag und 3.Advent
von Lichtgestalt (Gast)


Lesenswert?

detmar schrieb:
> das wenn die 1.LED max ist, die 2. dann mit dem leuchten
> beginnt...usw bis alle an sind
Kannst du JEDE LED in dem Stripe einzeln ansteuern? Vermutlich nicht.
von Dominik S. (dasd)


Lesenswert?

detmar schrieb:
> vorhanden eine beleuchtung mit 4 LED-Stripes, die als Lauflicht von
> einem
> tiny2313 (soll bleiben) angesteurt werden. Natürlich nur wenn finster.
> jetzt schalten die LED an oder aus, sollen aber langsam heller und dann
> dunkler werden.

So wie sich das anhört vermutlich schon.
Höchstens das Lauflicht bezieht sich auf die 4 einzelnen Streifen.
von Thomas E. (thomase)


Lesenswert?

detmar schrieb:
> 4 PWM-Kanäle sind ja vorhanden, wie kann man
> das anstellen, das wenn die 1.LED max ist, die 2. dann mit dem leuchten
> beginnt...
Das Aufdimmen der LEDs geht ja nicht von selbst. Die müssen angesteuert 
werden und dadurch weiss das Programm auch immer genau, welchen Wert sie 
gerade haben. Bei Erreichen eines bestimmten Wertes, startest du dann 
den Zyklus für die nächste. Und so weiter und so weiter.

void Pwm(void)
{
  if (Led1 < MAX)Led1++;
  else
  {
     if (Led2 < MAX) Led2++;
     else
     {
        if (Led3 < MAX) Led3++;
.
.
.
Der Aufruf der Funktion muß natürlich mit Verzögerung erfolgen. Sonst 
sind alle gefühlt gleichzeitig an.

mfg.
von detmar (Gast)


Lesenswert?

Mensch das geht ja flott.

Also mit LED ist natürlich der Stripes gemeint.
Die heißen in meinem Prog LED.

Der Codschnipsel ist doch C oder?
Bisher habe ich nur etwas Erfahrung mit Bascom und bischen Assembler.

Aber das mit IF..ELSE müßte ja gleich funktionieren.

mfg.
von detmar (Gast)


Lesenswert?

Ja.

Erfolgreich mit Tiny2313 in BASCOM erstellt.
Hilfe kam noch aus einem BASCOM-Forum.

MfG
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.