Knoble gerade an einem neuen Projekt. Zur Erklärung. Es soll ein Lauflicht aus 24 LED gebildet werden. jede LED soll "faden" also von Dunkel auf hell und wieder zurück gehen. Mit einem Atmega 16 währen mühelos die LEDs zu schalten. Doch wie sieht das mit PWM aus . Brauche ich für jede LED auch einen PWM Ausgang oder wäre eine andere Lösung praktikabler ? Gruß Uwe
Also mir fallen spontan 2 Ansätze ein. Entweder du implementierst ne Software-PWM und kannst somit jeden einzelnen Port dimmen, oder aber du verschaltest die Leds so, dass ein HW-PWM Pin vom Controller das Signal liefert und ein anderer Pin als Senke arbeitet. Beide Varianten haben vor- und Nachteile. Kommt drauf an, ob der Conroller noch was anderes machen soll, oder wie die externe Beschaltung aussieht..
Moin! Ich würde das mit Schieberegistern aufbauen, die einen EnableOutput Pin haben und diesen dann per PWM schalten. Habe ich schon mal gemacht, hat ganz hervorragend funktioniert. Und so nebenbei spart man noch viele Ports und meist auch viele Kabel auf denen eine PWM läuft... MfG Olof
Moin und Nachtrag, bei meinem Posting ging ich nat. davon aus, das ein µC eingesetzt wird. Aber das haben die beiden Vorredner ja sicherlich auch. MfG
Man nehme Scheiberegiester und einen PWM. Alle LED Kathoden an den PWM und die Annode an den entsprechenden Ausgang von dem Schieberegieester. Man schreibt ein Bit in das Schieberegister und schiebt es nach und nach durch. Die Entsprechende LED leuchtet und über PWM kann man dann die Helligkeit verändern. Dabei muss man dann nur schnell genug schieben, damit es nicht flimmert. Das wird dann so eine art Multiplexer-System. siehe auch: Beitrag "Re: Verbesserung der AD Wandlung beim DSP TMS320F2812" Gruß, Leo
Moin! Danke Leo für die etwas ausführlichere Beschreibung ;) Um das "Flimmern" zu unterdrücken kann man auch einen Schiebi mit "storage-Latch" einsetzen. Ich nehme da immer den 74hct4094. Man schiebt die Daten durch und gibt dann einen kurzen High-Impuls auf STROBE und dann erst übernimmt er die Daten an den Ausgang. MfG
Hallo Bademeister und Mitleser, danke für die vielen Antworten - klar habe ich Tutorials gelesen - doch zwischen lesen und verstehen ist das so eine Sache. Die angepeilte Lösung kann nur eine PWM Softwarelösung sein, damit jeder einzelne Pin eines Ports einen Fade- Cyclus durchläuft. Ansatz (Atmega 8) Ports A ; Port B; Port C auf Ausgang Port A Pin 0 PWM Cylus durchlaufen - danach Port A Pin 1 PWM Cylus durchlaufen - danach . . . Port B .. Port C Das wären dann die gewünschten 24 LED´s Es hakt nun daran, den Soft PWM zu durchlaufen. Anregung gesucht mfg Uwe
ups sehe gerade, dass der Atmega 8 nicht genügend Ausgänge hat dann muß ich wohl einen Atmega 16 verwenden ? nach wie vor PWM Realisierung offen Beispiel- programm gesucht mfg uwe
Moin! Aber auch das faden ginge leicht mit einem Schieberegister. - erstes paket schieben (z.B. 100000000) - einfaden (PWM-Wert per schleife von 0%-100% fahren) - ausfaden - Daten in schieberegister einen weiter schieben - einfaden - ausfaden - .... etc ANDERS wäre es wenn du ein Lauflicht haben möchtest, wo mehr als eine LED zur zeit leuchtet. Alternativ, aber eig. unschön, kannst des auch mit dem RC-Glied machen. Also einen rel. großen Kondensator, der sich beim setzen der LED auf ein über einen Widerstand langsam aufläd, also die LED langsam heller wird und nach dem abschalten die LED langsam dunkler. Das hat aber min. zwei RIESEN probleme: 1. Die RC-Glieder müssten dann auf eine Schrittfrquenz hin getrimmt werden 2. LED´s haben keine lineare Spannung/Helligkeitskennlinie. MfG
Hallo Ole, nein, eine Lösung mit RC- Glied ist mir zu "einfach und techn. überholt" Ob man ein Schiebregister mit einem PWM - Signal takten kann - wäre einmal auszu probieren, theoretisch möglich - nicht in meiner Bastelkiste - Ich strebe eine reine Softwarelösung an. Die bisherige "funktionierende Lösung" war mit einem Atmega8 und 12 LEDs. Optisch sieht das so aus, wie - ja wie ein Mercedes Stern der sich dreht. ( Programmiert mit BASCOM und BASIC ) Jetzt soll das ganze verfeinert werden - mit 24 oder noch mehr .. LEDs die wiederum einzeln ein und aus faden. nachdem ich jetzt weiss- was ich will - so suche ich - jetzt gezielt, wie man jeden einzelnen PIN eines Ports faden kann. Über PWM bekommt man ja viel infos, jedoch so richtig "klick" hat es bei mir noch nicht gemacht -- Nach wie vor - Anregungen sind willkommen. gruß Uwe
Hallo Mitleser, das Projekt - funktioniert ! Danke für die vielen Anregungen! keine weiteren Zuschriften erforderlich Gruß Uwe
>keine weiteren Zuschriften erforderlich
Wie wäre es denn, wenn du das Projekt hier veröffentlichen würdest?!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.