mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik TLC5947 ansteuern, dass kein Flackern entsteht


Autor: Naturfreund (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe 8 Stueck RGB Leds an einem TLC5947 hängen. Gefüttert wird der 
TLC5947 von einem ATMega. Nun ist es lt. Datenblatt des TLC5947 so, dass 
alle Ausgänge bis zur nächsten PWM Periode auf LOW gesetzt werden wenn 
neue Daten in den TLC5947 übernommen werden.

Ich toggele also meine gewünschten Helligkeiten in den TLC5947 ein und 
zieh XLAT zum übernehmen der Daten HIGH und alle LEDs sind bis zum 
nächsten Zyklus aus. Das macht sich als Flackern bei Fades bemerkbar.

Das Datenblatt bestätigt dies:
The data in the grayscale shift register are moved to the grayscale data latch with a low-to-high
XLAT transition on this pin. When the XLAT rising edge is input, all constant current outputs are forced off until the next grayscale display period. The grayscale counter is not reset to zero with a rising
edge of XLAT.

Das kann doch nicht Sinn der Sache sein?

Was kann ich dagegen tun? Nur kurz vor Ende einer PWM Periode XLAT 
setzen um das Flackern zu minimieren? Woher weiss mein ATMega wann eine 
PWM Periode um ist?


Any Ideas?


N:F

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Naturfreund (Gast)

>alle Ausgänge bis zur nächsten PWM Periode auf LOW gesetzt werden wenn
>neue Daten in den TLC5947 übernommen werden.

>nächsten Zyklus aus. Das macht sich als Flackern bei Fades bemerkbar.

>Das kann doch nicht Sinn der Sache sein?

Doch, denn sonst würden sie auch komisch flackern. Müsstem zusätzlich 
zwischenpuffern, das kostet FlipFlops und damit Siliziumfläche.

>Was kann ich dagegen tun? Nur kurz vor Ende einer PWM Periode XLAT
>setzen um das Flackern zu minimieren? Woher weiss mein ATMega wann eine
>PWM Periode um ist?

Indem du BLANK nutzt, um den PWM-Zähler IM TLC zurückzusetzen. Siehe 
Datenblatt. Das Problem ist dabei aber, dass der ansteuernde IC eine 
definierte Anzahl Takte ausgeben muss, um eben dieses Schema 
einzuhalten. Ein AVR könnte dabei ein wenig ins Schwitzten kommen. Man 
kann aber sicherlich einen Timer mit Output Compare dazu nutzen. Ist 
aber ein wenig tricky.

MFG
Falk

Autor: Bitte einen Namen eingeben (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da würde ich gern nochmal nachhaken! Kann man also mit dem TLC5947 also 
eine einzelne LED an einem seiner Ausgänge bis "auf 0" dimmen?

Am besten natürlich ohne Flackern :-)

THX!

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Bitte einen Namen eingeben (Gast)

>Da würde ich gern nochmal nachhaken! Kann man also mit dem TLC5947 also
>eine einzelne LED an einem seiner Ausgänge bis "auf 0" dimmen?

Sicher.

>Am besten natürlich ohne Flackern :-)

Auch das.

MFg
Falk

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie sieht es mit dem PCA9626 aus?
Gibt es auch hier ein Flackern beim Faden?
PS: Datenblatt habe ich noch nicht durchgearbeitet. Vielleicht weiss das 
ja jemand und kann es kurz erklären.

Ich bin heute wohl nicht ausgeschlafen: Wie kann man das Flackern beim 
Faden (TLC...) verhindern? Ich stehe wohl gerade etwas auf dem Schlauch 
bezüglich BLANK.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Christian H. (netzwanze) Benutzerseite

>Ich bin heute wohl nicht ausgeschlafen: Wie kann man das Flackern beim
>Faden (TLC...) verhindern? Ich stehe wohl gerade etwas auf dem Schlauch
>bezüglich BLANK.

Indem man es einfach so macht, wie es im Datenblatt beschrieben ist.

;-)

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk Brunner schrieb:
> Indem man es einfach so macht, wie es im Datenblatt beschrieben ist.

Ah, das steht dort drin?
Dann hatte ich diesen Thread missverstanden. Ich dachte, diese Info 
müsste man sich anderweitig erarbeiten.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.