- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 54

Thema: 7-Segmentanzeige mit Farbsteuerung

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.10.2008
    Ort
    Kehnert
    Beiträge
    1.159
    Habe eben auch noch mal ins Datasheet geschaut. Pro Digit werden 24 Bit gesendet, danach mindesten 50 microsec Low.
    Bei mehreren 24 Bit-Pakten wertet das höchste Digit das erste Paket aus und blendet dies dann bei der Weitersendung aus.
    Für das nächste Digit ist das ursprünglich 2te dann das erste usw .
    Warscheinlich wird bei 8 Stellen und 8 Datenpaketen dann beim letzten PINout nix mehr rauskommen, weil sie dann
    alle benutzt und ausgeblendet wurden.
    Auf Grund des Timings und der möglichen Toleranzen, sollte eine Taktfrequenz von 10MHz für den Ansteuerchip
    problemlos ausreichend. Bi optimistisch, langsam lösst sich der Knoten
    VG Micha
    Was brauche ich für Werkzeug - in dieser Reihenfolge seht ihr es:
    Vorschlaghammer, Notebook, BASCOM, Lötequipment, Rohrzange, Bolzenschneider ...

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    danach mindesten 50 microsec Low
    Vorsicht, nicht dass du das falsch verstehst:

    wenn du bits sendest, schnabuliert jede einzelne LED nacheinander 24bits und sendet die nachfolgenden bits einfach weiter ohne hinzusehen (daisy chain ... von daisy duck der schnattertante)

    wenn die erste LED in der reihe aber für mindestens 50µS ein low sieht, latcht sie die 24bits in das PWM register und stellt die Farbe dar udn warte auf frische 24bits ... wenn du also scho nachd er ersten LED eine 50µS pause machst, aktualisierst du immer nur die erste LED und die weiteren LEDs sehen niemals je ein bit.

    Hoffe das sit so ausführlich genug erklärt

    bei 10Mhz hättest du 12.5 Rechentakte pro ganzem Puls Zeit, da musst du aber schon ordentlich optimieren, geh mal lieber auf 16Mhz für 20 Takte
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Beiträge
    1.076
    Nach deinem letzten Datenbit bleibt einfach die Datenleitung auf Low. Wie lange spielt dabei keine Rolle.
    Kannst sie also auch dauerhaft auf Low lassen, wenn sich nichts in der Anzeige ändern soll.
    Die Information bleibt in den Chips erhalten. Du must also erst wieder eine "komplett" neue Kette reinschieben
    wenn sich etwas in der Anzeige ändern soll.
    Alle LEDs schieben zunächst ihren Daten wieder raus zur nächsten LED und ändern noch NICHT den zuletzt angezeigten Wert bis die etwas längere Pause kommt.
    Erst dann werden ALLE Daten übernommen und angezeigt.
    Man schiebt also zuerst die Daten für die letzte LED rein, dann für die vorletzte usw.
    Die Daten für die erste LED werden demnach als letztes reingeschoben. Dann folgt die lange Pause die mindestens 50us sein soll
    aber auch ewig lang sein darf.

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Man schiebt also zuerst die Daten für die letzte LED rein, dann für die vorletzte usw.
    das ist falsch! ... zumindest wenn es "normale" WS2812 sind, kann sein dass in dem modul die segmente anders herum verdrahtet sind, das habe ich jetzt nicht nachgeprüft, aber bei normalen WS2812 werden pro LED 24bits veschluckt und dann jedes weitere bit einfach weitergleitet, bis zum übernahmesignal (mind. 50µS low) und danach wartet die LED wieder auf 24 frische bits und jedes weitere wird dann wieder weiter getratscht
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Beiträge
    1.076
    Sorry, Du hast recht Ceos, ich hab zuviel mit den 595er geschoben....
    Geändert von Siro (17.05.2018 um 13:59 Uhr)

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.10.2008
    Ort
    Kehnert
    Beiträge
    1.159
    War ein Denkfehler von mir, denn für PWM und Segmentauswahl brauche ich
    ja 2 Byte pro Farbe, also müsste ein 24-BIT-Paket bei einer 8-stelligen
    Anzeige 64mal gesendet werden. Es müsste in Anlehnung des Datasheets
    allerdings noch mehr, als die 50 microsec als Synchronisations und Bitmuster-
    trennungen geben. Für moderate 1 sec - Anzeigeänderungen immer noch
    akzeptabel, da muss der AVR eben knapp 200ms extrem fleissig sein, das
    erschlage ich noch mit meinem Lieblingscompiler (andere beherrsche ich
    eh nicht), Bei der Taktfrequenz hatte ich folgende Berechnungen angestellt;
    Ohne Toleranz brauchen wir ein Taktraster von 50ns, also 20 MHz, bei
    Ausnutzung der vollen Toleranz 200ns, also 5 MHz, der Mittelwert also
    10 MHz, schnellere, als laut Datasheet mögliches "Reinschiessens" des
    Datenstreams funktioniert warscheinlich eh nicht.
    Das ist der Stand der Dinge, zumindest bei mir.
    VG Micha
    Was brauche ich für Werkzeug - in dieser Reihenfolge seht ihr es:
    Vorschlaghammer, Notebook, BASCOM, Lötequipment, Rohrzange, Bolzenschneider ...

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.10.2008
    Ort
    Kehnert
    Beiträge
    1.159
    Ich glaube, jetzt hats bei mir geklickt. Das Dataheet der verbauten WS2812
    hatte ich mir eben nochmal angeschaut. Letztendlich besteht schaltungs-
    technisch zum Beispiel eine 8-stellige RGBDIGIT-Anzeige lediglich aus einer
    Reihenschaltung von 64 Stück WS2812. Man kann einen Ausgangspin nutzen
    und schiesst dann 64 mal 24-BIT-Datenpakete in die Anzeige, man kann
    aber auch 8 Ausgangspins nutzen und steuert die RGBDIGITS individuell an
    und sendet dann bei Aktualisierung einer Stelle eben nur 8 mal 24-BIT-
    Datenpakete. Sollte ich das nun richtig verstanden haben?
    VG Micha
    Was brauche ich für Werkzeug - in dieser Reihenfolge seht ihr es:
    Vorschlaghammer, Notebook, BASCOM, Lötequipment, Rohrzange, Bolzenschneider ...

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Absolut korrekt

    Deine idee multiple Pins für mehrere Segmente zu nehmen sit auch nciht ganz verkehrt

    wenn ich die SPI schnittstelle nehme um 24Bits zu codieren, kann ich ja auch hingehen und mehre SPIs parallel befüttern, so klann ich die 100-200 Rechentakte die für das herausschieben eines SPI Bytes benutzt werden verwenden um das Byte für die 2te SPI SChnittstelle zu berechnen und so abwechselnd auf 2 SPI pins meine PPM senden, da die LEDs kurze Pausen ja scheinbar akzeptieren
    Geändert von Ceos (18.05.2018 um 10:59 Uhr)
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

Ähnliche Themen

  1. 7 Segmentanzeige multiplexen
    Von Maverick83 im Forum C - Programmierung (GCC u.a.)
    Antworten: 9
    Letzter Beitrag: 01.06.2011, 14:19
  2. Picaxe <-> 7-Segmentanzeige
    Von D!PSW!TCH im Forum PIC Controller
    Antworten: 16
    Letzter Beitrag: 04.11.2007, 15:58
  3. Farbsteuerung im HSV modell
    Von Jörn Arne im Forum Assembler-Programmierung
    Antworten: 5
    Letzter Beitrag: 05.10.2007, 23:40
  4. 7 Segmentanzeige
    Von TobiasBlome im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 22
    Letzter Beitrag: 17.08.2007, 21:26
  5. Anschlussbelegung 7 Segmentanzeige
    Von Elektronikus im Forum Elektronik
    Antworten: 8
    Letzter Beitrag: 19.12.2004, 19:57

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen