Hallo Leute,
Ich habe ein Problem mit meiner Schaltung. Und zwar steuere ich meine
LEDs mit einem Zetex mit der Transistorschaltung am Adjust-Pin an. D.h.
ein PWM mit DutyCycle 100% entspricht Helligkeit "0" und ein PWM mit
DutyCycle 0% entspricht 255. Und das ist mein Problem. Wenn ich die
Elektronik einschalte, dann blitzen die LEDs kurz auf. Ich deklariere
die Pins (die den Transistor ansteuern) zwar gleich zu Beginn als
Ausgänge und schalte sie auf 1, aber anscheinend ist das ein bisschen zu
langsam! Gibt es noch eine andere Möglichkeit die Atmel-Pins so schnell
wie möglich auf logisch 1 zu ziehen, ohne die Hardware zu ändern (ist
nämlich nicht mehr möglich)?
BTW: Ich verwende einen ATMega328p
Vielen Dank!
mfg
du kannst die startup-zeiten verkleinern wenn deine stromversorgung
schnell genug die 5V erreicht. aber ganz wegbekommen wirst du den effekt
nicht ohne die HW zu ändern.
Andy schrieb:
> Ich deklariere> die Pins (die den Transistor ansteuern) zwar gleich zu Beginn als> Ausgänge und schalte sie auf 1, aber anscheinend ist das ein bisschen zu> langsam!
Nö, nur falschherum.
Dadurch erzeugst Du einen kurzen Low-Puls.
Peter
der ist aber nur drei CLKs lang. ich denk den würde man nicht sehen. das
problem kommt eher daher, daß die AVR pins high-Z sind bevor das
programm sie konfiguriert.
Die Reihenfolge war falsch, aber das ist nicht die Ursache. Wenn der
Kram dahinter einen offenen Pin als "0" sieht, dann geht es nicht ohne
externem Pullup.
das ändert aber nichts daran, daß der ganze krempel eine kurze zeit
braucht bis die 5V µC spannungsversorgung steht, der taktgenerator
angeschwungen ist und der µC letztendlich startet.
Klaus Falser schrieb:
> Wenn die Pins am Anfang als Ausgänge geschalten sind und deshalb> hochohmig, ...
Häh?
> dann sollte eigentlich kein Strom durch die LEDs fließen, oder?
Zitat von ganz oben:
>>>>> LEDs mit einem Zetex
Porbiers einfach mit einem Pullup ;-)
BTW:
>>>>> LEDs mit einem Zetex
Ach, mit dem Zetex also.
Mit welchem Zetex denn?
das mit dem externen Quarzoszillator kann ich bestätigen. Wenn ich den
internen nehme, blitzts nicht! Ich kann aber den internen nicht nehmen,
da ich für meine DMX-Steuerung einen genauen Takt brauche!
Evtl. Keramikschwinger verwendet und die Fuses entsprechend einstellen.
Blitzt zwar auch, aber erheblich kürzer. Noch kürzer wird's mit einem
vollständig externen Quarzoszillator (Vierbeiner), aber der braucht
deulich mehr Platz als die sinnvollste Lösung: externe Pullups.
Ehe man die Hardware so unveränderlich macht sollte das Ganze getestet
sein :-(
Externe Pullups sind das einzig sinnvolle, die kann man auch noch auf
eine fetige Platine auflöten wenns ein Einzelstück ist.
Wenn nicht kann man das Layout immer ändern.
Udo. R. S. schrieb:
> Externe Pullups sind das einzig sinnvolle,
Aber nur solange, bis man ins Datasheet schaut. Demzufolge ein Pullup
für Festbeleuchtung sorgt, für Dunkelheit aber GND. Und deshalb ein
Kondensator nach GND empfohlen wird.
Ben _ schrieb:
> softstart-kondensator? was soll das nun wieder für ein murks werden? ich> denke da soll eine PWM rein - na dann viel spaß mit dem C da dran!
Originalinfo Datasheet, sogar mit Bild. Man kann den ADJ zwar auch
direkt mit PWM füttern, aber ebenso mit Gleichspannung. Wofür dann ein
R/C-Glied sorgt, dessen C nebenbei den Softstart mitbringt.
Ob ein Pulldown-Widerstand was bringt wäre zu untersuchen. Der Pin ist
nicht stromfrei, könnte sein dass der etwas arg niederohmig ausfallen
muss.
und daß du damit die PWM versaust steht da bestimmt nicht drin. daran
muß der doofe entwickler selber denken. entweder einen pulldown oder
pullup, der für stabile verhältnisse sorgt bis der µC die kontrolle
übernimmt - alles andere erscheint mir sehr zweifelhaft.
Ben _ schrieb:
> und daß du damit die PWM versaust steht da bestimmt nicht drin.
Ist sogar beabsichtigt. Ein richtig dimensioniertes R/C-Glied versaut
die PWM dermassen gründlich, dass eine geeignete Gleichspannung als
Steuerspannung entsteht (PWM als DAC).
> muß der doofe entwickler selber denken. entweder einen pulldown oder> pullup,
Yep, Pulldown <= 5K müsste funktionieren.
Bin ich hier eigentlich der einzige, der sich mal die Mühe gemacht hat
ins Datasheet reinzusehen: "The ADJ pin can be driven by an external dc
voltage (VADJ), as shown, to adjust the output current to a value above
or below the nominal average value defined by RS.".
Der ZXLD1356 ist ein Schaltregler, der über den ADJ-Pin wahlweise per
PWM oder per Gleichspannung gesteuert wird.
Lothar Miller schrieb:
> Klaus Falser schrieb:>> Wenn die Pins am Anfang als Ausgänge geschalten sind und deshalb>> hochohmig, ...> Häh?>
Oh jeh, habe natürlich Eingänge gemeint.
Schaltplan ist auch so klar, mir jedenfalls. Der Controller-Pin liegt
offenbar direkt am ADJ-Pin vom Zetex. Im offenen Zustand sorgt das für
einen genau definierten Strom durch die LED.
Kriegt man komplett weg mit einem Pegel unter 0,2V, was bei den internen
1,25V/50KOhm mit etwas Reserve auf besagte <= 5K rausläuft.
Ist das denn bei DMX sooo schlimm das die LED kurz auf blitzen?? Ich
würde die Zeit vergrößern und im Datenblatt schreiben das das so sein
soll :)
It's not a bug it's a feature...
A. K. schrieb:
> Schaltplan ist auch so klar, mir jedenfalls. Der Controller-Pin liegt> offenbar direkt am ADJ-Pin vom Zetex. Im offenen Zustand sorgt das für> einen genau definierten Strom durch die LED.>> Kriegt man komplett weg mit einem Pegel unter 0,2V, was bei den internen> 1,25V/50KOhm mit etwas Reserve auf besagte <= 5K rausläuft.
Nein, als erstes hat er ja geschrieben, dass er den Pin über einen
Transistor ansteuert. Deshalb ja auch bei logisch 1 LED aus und bei
logisch 0 Leds an. Ich würde einfach einen Pull Down an der Adj. Pin
setzen und dann mit PWM drangehen.
Michael
Moment mal A. K.
Ich arbeite nebenbei noch und habe keine zeit mir noch ein Datasheet
rauszusuchen zumal die Typbezeichnung nicht mal konkret war. Wenn dann
häng(t) halt das Sheet zumindest mit an.
Ausserdem Zitat:
>ein PWM mit DutyCycle 100% entspricht Helligkeit "0"
Also ist Helligkeit 0 wenn die PWM dauerhaft 'high' bzw. wohl 5V bringt.
So zumindest muss man es verstehen. Also ext. Pull UP
OK, also vielen Dank zunächst für die vielen Antworten.
RC-Gleid fällt weg, da ich das PWM-Signal für einen stabilen
Arbeitspunkt der LEDs brauche (Weißlichterzeugung).
Wie gesagt, kann ich an der Hardware nix mehr ändern, d.h. es müsste
etwas softwaremäßiges her...
wenn du an der HW nichts mehr ändern kannst, also nichtmal SMD pullups
oder so zwischenlöten kannst dann war's das. deine software macht
bereits alles was sie kann.
Eine Zeitreisemaschine in und für Software wäre vielleicht eine Lösung,
allerdings scheint es das in der Codesammlung noch nicht zu geben. Musst
Du also selber schreiben... ;)