- 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 Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Nun daß diese WS2812 & Co. verflucht schnell sind, sieht man ja in zahlreichen Videos im Netz: hier bauen manche Bildschirme mit mehreren tausend dieser LEDs auf und zeigen auf diesen Videofilme.
    das stimmt nur, wenn man mehrere gruppen parallel ansteuert

    vergleiche einfach mal die grunddaten

    APA102: 4Mhz Baudrate (angeblich funktionieren die bis 10Mhz, nicht getestet, mir fehlt immernoch ein ausreichend schneller Pegelwandler)
    WS2812: 800kHz Baudrate

    Okay wir reden hier von 32bits(APA) statt 24bits(WS), also verlieren wir ein wenig, aber schon bei 1Mhz SPI Clock hat man das schon fast raus und nach oben gibt es noch mind. 4 mal mehr Steigerungspotential

    Zumal man auch sog. D/QSPI benutzen kann, bei dem mit jedem Takt an CLK 2(DSPI) oder 4(QSPI) Bits gleichzeitig auf unterschiedlichen Pins ausgegeben werden. Mit einem QSPI fähigem Controller kann man also noch ein paar Stufen effizienter werden wenn man nur eine Transferroutine für 4 Ketten gleichzeitig aufrufen muss

    diese APAs sind einfach die WS nur eben weitergedacht, leider verharrt arduino und co. sehr fest bei seiner Unterstützung und promotet die neopixel über den nanodots recht heftig
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.03.2011
    Beiträge
    1.899
    Zitat Zitat von Ceos Beitrag anzeigen
    APA102: 4Mhz Baudrate (angeblich funktionieren die bis 10Mhz, nicht getestet, mir fehlt immernoch ein ausreichend schneller Pegelwandler)
    Das sollte doch kein wirkliches Problem sein. Ein HCT14 schafft 10MHz locker, das haben ja alte LS-TTL Gatter schon geschafft. Und wenn man die Signalpolarität nicht im µC anpassen kann, zwei hintereinander.

    Zitat Zitat von Crazy Harry Beitrag anzeigen
    Zugegeben das Protokoll der APA gefällt mir für eine Ansteuerung durch ein eigenes Programm auf einem µC wesentlich besser.
    Wirklich entspannter ist es nicht. Wenn ich einen SPI-Controller mit 10MHz bediene, muß ich auch knapp alle µs ein Byte an den SPI-Controller liefern, sonst gibts einen Underun-Error. Das klappt genauso gut oder schlecht per Interrupt wie beim Neopixel. Gewinnen kann ich eigentlich nur mit einem Fifo am SPI oder einem DMA.

    Was aber sicher richtig ist, daß man es beim Bitbanging leichter hat. Da man bei SPI als Master den Clock selbst erzeugt, ist man nicht auf ein genaues Timing angewiesen. Man kann also so schnell man kann 8 Bit raustakten und dann das nächte Byte aus dem Speicher holen. Die entstehende Pause ist unproblematisch. Wenn es aber stimmt, das man bei den WS die Länge der Low-Zeit auch etwas länger ausfallen lassen kann, geht das auch mit denen.

    Für die 64 LEDs, die man auch nur einige wenige Male in der Sekunde updaten muß, ist das höchsten ein Problem für BASCOM. Da bräuchte man eine Unterstützung durch eine eingebaute Funktion, wie die Neopixel-Libraries beim Arduino. In C und sicher auch in Assembler geht das aber, wie man hier sieht. Die 57 LEDs sind nicht weit weg von 64.

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Gewinnen kann ich eigentlich nur mit einem Fifo am SPI oder einem DMA.
    meine worte

    ein XMEGA würde sich direkt langweilen bei dem job XD
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.10.2008
    Ort
    Kehnert
    Beiträge
    1.159
    Kurze Zeit habe ich überlegt, das komplette Datenprotokoll im
    Format 24 mal HXL (X ist das aktive BIT) pro RGB mit dem AVR
    zu erzeugen und in ein 128 BIT-Schieberegister MC4562B seriell
    einzulesen (man braucht nur 72). Die ca 50 Mikrosec Pause
    sollten dafür genugen. Das notwendige Auslesen mit ca 2,4 MHz
    in die LED-Kette stiess allerdings nach Studium der dynamischen
    Werte im Datasheet auf grosse Skepsis.
    Favorisieren werde ich jetzt das parallele Laden von 3 schnelleren
    8-BIT-Schieberegistern 74FCT299B, welche die X-BITS sogar
    nur noch mit 800 kHz rausschiebt und das mittlere BIT eines
    durch einen "1-zu-3-Zahlers" erzeugten Bitmusters beeinflusst.
    Die Anzeigeschaltung (8xRGBDIGITs) wird autark mit einem
    ATMega8 betrieben. Die Farbsteuerung wird "runterreduziert",
    da lediglich 7 Farben für die Anzeige notwendig sind.
    Die restliche Rechen- und Speicherperformance des ATMega
    bietet dann Platz für eine komfortable quasialphanumerische
    Anzeigedecodierung mit nur 6 BIT.
    Alles Weitere nach erfolgten Tests.
    VG Micha
    Was brauche ich für Werkzeug - in dieser Reihenfolge seht ihr es:
    Vorschlaghammer, Notebook, BASCOM, Lötequipment, Rohrzange, Bolzenschneider ...

  5. #5
    Erfahrener Benutzer Roboter Genie Avatar von Crazy Harry
    Registriert seit
    15.01.2006
    Ort
    Raum Augsburg - Ulm
    Beiträge
    1.313
    Zitat Zitat von Klebwax Beitrag anzeigen
    Wirklich entspannter ist es nicht. Wenn ich einen SPI-Controller mit 10MHz bediene, muß ich auch knapp alle µs ein Byte an den SPI-Controller liefern, sonst gibts einen Underun-Error. Das klappt genauso gut oder schlecht per Interrupt wie beim Neopixel. Gewinnen kann ich eigentlich nur mit einem Fifo am SPI oder einem DMA.
    Ich finde das wesentlich entspannter, da durch den separaten Clock-Pin das Timing absolut unkritisch ist. Der APA ist es egal ob sie mit 400kHz oder 2MHz angesteuert wird.
    Ich programmiere mit AVRCo

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Ich glaube wir reden hier mittlerweilen über "Geschmäcker" udn über Geschmack lässt sich vorzüglich streiten, sollte man aber nicht

    Beide Wege haben Vor- und Nachteile, die einen sind etwas neuer die anderen etwas älter, es ist nur schade dass sich die Arduino Community eben so unendlich hart auf die WS eingeschossen hat und die APA einfach keine Liebe bekommen, denn technisch gesehen brauchen sie keine Liebe, sondern nur die SPI API und die ist schon fertig, eine weitere Lib wäre überflüssig, aber wenn es eben keine Lib mit dem Namen der LEDs gibt schreckt das die meisten Anfänger halt ab.
    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