Ich habe eine billige "Wandprojektionsuhr" zerlegt:
Und entfernte die LCD-Platine, die die projizierte Uhrzeitanzeige vor der superhellen roten LED anzeigt:
Als kleines Hobbyprojekt möchte ich dieses LCD mit einem mit WLAN ausgestatteten Arduino verbinden und eine einfache NTP-basierte Projektionsuhr erstellen.
Wie stelle ich eine Schnittstelle zu diesem Board her? Ich habe noch nie zuvor eine direkte Verbindung zu einem LCD hergestellt (ohne begleitende Steuerschaltung), daher bin ich mir nicht sicher, wie ich vorgehen soll. Wie das Bild zeigt, hat die LCD-Platine zwei kleine Flachbandkabel mit jeweils 6 Drähten. An jedem Kabel hat einer der Drähte eine weiße Isolierung. Alle 12 Drähte scheinen direkt in die LCD-Scheibe zu gehen, ohne zusätzliche diskrete Komponenten auf der Platine.
Die Uhr wurde mit zwei AA-Batterien betrieben, daher gehe ich davon aus, dass der verwendete Logikpegel nicht mehr als 3 V beträgt. Das projizierte Bild zeigt die Standard-4-Uhr-Ziffern im Format "24:59".
Wie lege ich Spannungen an diese Drähte an, um Ziffern anzuzeigen? Handelt es sich um eine einfache Eins-zu-Eins-Schnittstelle, bei der das Einschalten eines Drahtes dazu führt, dass ein Teil des Displays undurchsichtig wird, oder handelt es sich um eine Art Matrix, bei der mehrere Drähte nacheinander aktiviert werden müssen, um die Gesamtziffern zu bilden? Kann man davon ausgehen, dass der weiße Draht Masse und die grauen Signale sind, oder ist es umgekehrt?
Da ich nur eine davon habe, möchte ich nicht blind anfangen zu experimentieren, indem ich Spannungen über Drähte anlege und riskiere, sie zu zerstören. Wie soll ich vorgehen?
Bearbeiten: Ich habe die Ausgabe einiger LCD-Pins von der ursprünglichen Steuerplatine der Uhr überprüft und die Muster sehen dem hier gezeigten "Multiplex" -Beispiel sehr ähnlich . Jeder Pin gibt bis zu 4 Logikpegel aus. Ich kann also davon ausgehen, dass es sich um ein Multiplex-LCD handelt. Da ich 4 Ziffern habe, bedeutet das, dass es 4 gemeinsame / Backplane-Pins gibt? Wie würde ich 4 Logikpegel aus einem Arduino generieren? Muss ich 4 generieren oder kann ich mit der hier beschriebenen LCD-Ansteuermethode mit zwei auskommen ?
Bearbeiten: Ich bin mir ziemlich sicher, dass dies die Ausgabe von einem der Backplane-Pins ist, da sie sich auch nach mehreren Stunden nie ändert. Es sieht so aus, als ob der Impuls 4 ms breit ist, was einer gesamten "Ein"-Phase von 8 ms entspricht, und der Abstand zwischen den Wiederholungen etwa 16 ms beträgt. Basierend auf der Dokumentation für gemultiplexte LCD-Steuersignale können sich die Impulse an den Backplane-Pins nicht überlappen, was bedeutet, dass in der "Aus" -Phase nur genügend Platz für ein weiteres Backplane-Signal vorhanden ist. Ich denke, das impliziert, dass es nur 2 Backplane-Pins gibt. Ist das richtig?
Ich zähle 11 Flachleiterverbindungen zum LCD. Das reicht gerade für ein 7 x 4-Display (einer der 12 Drähte ist wahrscheinlich überzählig, nicht verbunden oder gemeinsam mit einem anderen).
Die erste Ziffer muss nur drei Zustände 0, 1, 2 (und aus) anzeigen, und dies kann mit einer Liste von 4 angetriebenen Elementen arrangiert werden, die ein paar Segmente miteinander verbunden haben. Dies lässt 3 Ersatzelemente übrig, die für den Doppelpunkt und die AM- und PM-Melder angesteuert werden können.
Als rohes Multiplex-LCD-Display erfordert es eine mehrstufige Ansteuerung, und dies kann mit den meisten Mikrocontrollern auf Kosten zusätzlicher Pins und Widerstände durchgeführt werden. Wenn die AC-Treiberlogik nicht in Hardware ausgeführt wird, wurde vorgeschlagen, Sperrkondensatoren an den Zeilen- oder Spaltentreibern zu verwenden, so dass kein Rest-DC vorhanden ist, der eine Degeneration der Anzeige verursacht.
Das Testen mit Gleichstrom ist normalerweise sicher, aber das Erzeugen von Wechselstrom über einen PC-Kopfhörerausgang reicht normalerweise auch aus, um einfache Displays anzusteuern. Verwenden Sie einen Tongenerator mit einer niedrigen Frequenz von 100 bis 400 Hz und simsen Sie kurz die verschiedenen Pin-Kombinationen.
Oft reicht es aus, zwei Drähte von 30 bis 100 cm links und rechts auf Ihrem Schreibtisch zu haben, um ein LCD zwischen ihnen zu testen, da das LCD eine so hohe Impedanz hat.
EDIT:
Ihr Display ist ein 1:4-Multiplex, da es nicht genügend Anschlüsse für einen einfacheren 1:2- oder 1:3-Multiplex gibt. Direktantrieb (1:1 oder nicht gemultiplext) ist am einfachsten, erfordert jedoch einen Pin für jedes einzelne Segment (28+1-Verbindungen), da es eine einzige gemeinsame Backplane hat.
Hier etwas Lesestoff.
Wenn man es betrachtet, kann es sich um eine einfache Multiplex-LED-Anzeige mit 7 Segmenten handeln. Es gibt ein paar gemeinsame Pins, die Sie mit einer Batterie und einem Widerstand oder einer Knopfzellen-Cr2033-Batterie oder einem Diodentester abbilden könnten. Testen Sie jeden Pin einzeln mit einem anderen Pin und erstellen Sie einen Schaltplan. Sobald Sie das Layout haben, können Sie es wie jede andere LED steuern und nach Bedarf durch jede Ziffer scannen. Es gibt viele Beispielprojekte online für Details zur Verdrahtung und Steuerung dieser numerischen Anzeigen. Grundidee, PIN-Nummern und Standorte variieren:
Aber wenn dies zu viel Arbeit zu sein scheint, tun Sie einfach, was ich zuvor in den Kommentaren gesagt habe, und synchronisieren Sie den XTAL mit einer externen NPT-basierten Atomuhr mit derselben Frequenz.
Aber wenn es nach Spaß aussieht, lesen Sie hier mehr für Details
Typ: Transmissiv Negativ
Hintergrundbeleuchtung: 5 mm Rot 20 Grad 10 Cd
11 Pin-Beschreibung
Beispiel einer MUX-Uhranzeige (wie QAM analog)
1:4 MUX pro Pin-
Segment-Treiber
Tony Stewart EE75
Tony Stewart EE75