4-stelliges 7 Segment LED-Board mit I2C Anbindung

  • Hallo,


    durch den vorigen Beitrag mit den gemuxten HDSP-F303 bin ich ermuntert worden, auch mal mein Board her vorzustellen :D
    Hier ist ein frühes Stadium, zunächst noch auf Lochrastermaterial aufgebaut:



    Die LED Anzeigen sind alte DDR-Anzeigen des Typs VQB28, die ich, wie in diesem Beitrag: Tuning alter Ziffernanzeigen mit neuen LED Chips
    bereits vorgestellt, mit neuen SMD-LEDs bestückt habe.
    Hier ist das Layout der entgülitigen Platine:



    Das Pfiffige an dieser Platine ist, das die Einer-Stelle 180° gedreht auf dem Kopf stehend montiert ist. Das hat folgenden Sinn: der Dezimalpunkt wird bei einem Thermometer als ° Zeichen zweckentfremdet! Die Segmente der Ziffer sind so miteinander gekreuzt, das sie auch kopfstehend wieder die richtige Darstellung ergeben :D
    Hier ist der dazugehörige Schaltplan:



    Wobei dazu zu sagen ist, das der SAA1064 abgekündigt ist und nur noch schwer erhältlich ist. Ich habe mich über Aliexpress noch damit eingedeckt. Die SMD Variante ist noch besser erhältlich, die kann man auch über eine SMD zu DIL Adapterplatine verbauen. Die schönen alten DDR LED Anzeigen sind nur noch sporadisch über Ebay ud sonstige Privatverkäufte erhältlich. Ich hatte allerdings Glück und habe mir vor ca. 2 Jahren bei Ebay einen originalverpackten Karton mit 150 Stck an Land gezogen 8)
    Wobei ich die etwas unbeliebteren VQB27 mit gemeinamer Katode genommen habe, was durch den Umbau gegenstandslos wurde, da es ja mir überlassen ist, wie rum ich die SMD Einzel-LEDs einbaue. Die Platinen habe ich mir über Elecrow.com in China fertigen lassen, wo ich für 10 Platinen ca. 25€ inclusive Versand gezahlt habe. Die I2C Schnittstelle bietet mir den Vorteil, das ich die Anzeige auch 2 Meter abgesetzt vom Controller montieren kann. Ein LAN Kabelrest als Zuleitung langt völlig. 2 Adern für Daten und 2 Adern für Masse und 5V


    SAA1064_code.zip


    Noch ein paar Anmerkungen zum Code. Ich habe da viel mit Copy und Paste gearbeitet und einen Sketch für ein Thermometer mit DS18B20 und LCD Display als Grundlage hergenommen. Das sieht man noch an den auskommentierten Codeabschnitten. Für den SAA1064 gibt es im Netz ebenfalls Beispielcode. Im Arry die 225 ist das °C Zeichen. Über die Addition von 128 in der Formel für die Zehnerstelle wird der Dezimalpunkt angesteuert. Im Wire.write Kommando kann man den Segmetstrom für die Displays noch festlegen (habe ich an entsprechender Stelle auch kommentiert). Ich arbeite mit dem Minimum von 3 mA, maximal sind 21 mA möglich. Durch den Umbau sind die Anzeigen allerdings so schon sauhell!
    Ich verwende das Ganze als Laborthermomenter, um an Kühlkörpern und LEDs schnell mal die Oberflächentemperatur messen zu können.