Ich habe diese Art von LCD oft in Waagen, Taschenrechnern, Messgeräten, Mikrometern usw. gesehen. Ich weiß, dass es sich um ein ziemlich traditionelles Display handelt, aber ich mag seine Kompaktheit, Einfachheit und vielleicht sogar weniger Kosten im Vergleich zu TFTs oder Smartphones. Geben Sie Touch-Displays ein.
[ Wie heißt es? Beantwortet von @ kevlar1818 und @stevenvh: "Sieben-Segment-Anzeige"]
Ich möchte mit dieser Art von LCD arbeiten, zum Beispiel habe ich gerade diese 8-stellige mit dem Namen VIM-878 aus dem Digikey-Katalog gefunden. Hier ist das Datenblatt .
Wie kann ich damit kommunizieren? Ich würde gerne wissen, was eine gute / übliche Art der Verbindung mit einem einfachen AVR-Mikrocontroller wie einem Atmega8 wäre - vorzugsweise mit Schnittstellenschaltungen / Teilen, die nicht zu groß sind.
- Ich nehme an, dass eine Art Treiber oder Multiplexer notwendig wäre? Ich schätze, ich suche nach einer Anfangsperspektive von anderen, die möglicherweise bessere Erfahrungen mit der Verbindung mit dieser Art von LCD haben.
Antworten:
Es ist eine 7-Segment-Anzeige . Im Gegensatz zu den Punktmatrix-Zeichenanzeigen bezieht sich Kevlar auf diese meist nicht intelligenten Module. Die meisten Punktmatrix-Displays verfügen über einen HD44780-kompatiblen Controller, auf den Sie einfach ASCII-Codes schreiben können. Ein 7-Segment-LCD ist jedoch häufig nur das Glas mit Anschlüssen für Segmente und einer Reihe von Rückwandplatinen (häufig bis zu 4).
Das Fahren von LCDs kann umständlich sein, da sie nicht nur zwei Ebenen verwenden, sodass Sie sie nicht mit gängiger digitaler Logik fahren können.
Am besten wählen Sie einen Mikrocontroller mit integriertem LCD-Controller aus, an den Sie das Display direkt anschließen können, z. B. den TI MSP430x4xx . Wie die meisten Controller kennt auch dieser nur Segmente; es sind keine Ziffern oder irgendetwas bekannt. (Großartig, zuerst hatten wir ein dummes Display, jetzt haben wir auch einen dummen Fahrer!) Dafür gibt es einen Grund. Diese LCD-Treiber werden häufig zum Ansteuern von benutzerdefinierten LCDs verwendet, die eine Mischung aus einem numerischen Teil, Balkendiagrammen und benutzerdefinierten Symbolen sein können. Ein solches Symbol ist auch ein einzelnes Segment, daher macht es keinen Sinn, über Ziffern zu sprechen.
Diese Anzeige enthält Symbole wie "Batterie" und "Wecker", aber auch alle Textfelder wie "AM", "PM" und "SNOOZE" sind Symbole, die aus einem einzelnen Segment bestehen (dh von einem einzelnen Bit gesteuert werden).
Lesen Sie weiter
MSP430x4xx Family Benutzerhandbuch . Der LCD-Controller wird auf S. 709 ff. Beschrieben.
quelle
Was Sie denken, wird als 7-Segment-LCD bezeichnet. Wenn Sie wissen, wie man eine normale LED aufleuchtet, sind Sie 1/8 des Weges dorthin.
Hier ist das Wiki dazu. Es gibt eine Theorie darüber, wie Sie Zahlen erstellen würden, indem Sie verschiedene Arrays der LEDs beleuchten: http://en.wikipedia.org/wiki/Seven-segment_display
(de) Multiplexing ist eine gute Methode zum Beleuchten eines großen 7-Segment-Panels, obwohl dies nicht erforderlich ist. Wenn Ihre E / A-Ports begrenzt sind, ist dies der richtige Weg. Die Grundlagen des Demuxing funktionieren wie folgt (vorausgesetzt, Sie kennen hier Binär). Schau dir dieses Bild an:
Mit einer 3-Bit-Binärzahl wie 000 können wir bis zur Zahl 7 darstellen (IE, um Port 5 auszuwählen, hätte ABC 101). Was in Ihrer Situation im Demux passieren würde, ist, dass ein Eingang so etwas wie ein hohes Signal ist und AB & C E / A-Ports sind. Die 0 bis 7 sind mit jedem Segment des LCD verbunden. Wenn Sie von Ihrem Controller aus auf ABC schreiben, können Sie ein Segment beleuchten. Sie sagen vielleicht warten, aber wenn ich eine Zahl aufleuchten lassen möchte, müssen viele Segmente beleuchtet werden, nicht nur das 5. Segment. Danach können Sie in zwei Straßen schauen, um auf dem LCD eine Nummer anzuzeigen. Das erste ist das Hinzufügen weiterer Demux für zusätzliche benötigte Segmente. Der zweite ist ein Software-Ansatz, bei dem jedes Segment sehr schnell geflasht wird, um die Illusion zu erzeugen, dass das Panel vollständig beleuchtet ist.
quelle
Ich glaube, Sie beziehen sich auf eine Sieben-Segment-Anzeige oder eine Punktmatrix-Anzeige .
Hier ist ein Beispiel für Sparkfun mit dem entsprechenden Datenblatt . Dieses AVR-Beispiel / Tutorial finden Sie im Abschnitt "Dokumente" der Produktseite. Ist Sparkfun nicht großartig?
Lassen Sie uns anhand dieser 14-Segment-Anzeige und ihres Datenblatts herausfinden, wie sie verwendet wird.
Nehmen wir das Beispiel eines
7
im ersten (ganz linken) Segmentcluster gezeigten.So schreiben Sie ein
7
, müssen wir assert Segmente1A
,1B
und1C
, wie im Datenblatt gesehen. Diese Segmente sind alle Pin 35 des Geräts zugeordnet, jedoch in unterschiedlichenCOM
Zeilen. Bei einem solchen kryptischen Datenblatt würde ich davon ausgehen, dass dieseCOM
Linien den Pins 17 bis 20 zugeordnet sind, wenn man die Tabelle im Datenblatt berücksichtigt.Somit wird jedes Segment über geltend zu machen, man Stift 35 hoch halten würde , während schnell zwischen behauptet cycling
COM1
,COM2
undCOM3
über die Stifte 18, 19, bzw. 20. Die drei Segmente werden alle gleichzeitig beleuchtet angezeigt, wodurch ein7
.Abgesehen davon verwendet gut geschriebener Code einfach eine Art Karte für ein bestimmtes Zeichen, das angezeigt werden soll. Die Herausforderung besteht darin, diese Karte für JEDEN Segmentcluster funktionsfähig zu machen.
Ich empfehle immer noch ein Punktmatrix-Display wie das erste, mit dem ich verbunden bin. Es gibt sicherlich leichtere Designs da draußen. Der Vorteil der Verwendung einer Punktmatrix-Anzeige besteht darin, dass in den meisten ein Datenregister integriert ist, sodass Sie nur 8-Bit-ASCII-Zeichen übergeben können, ohne dass es zu Problemen bei der Implementierung kommt, wie im obigen 14-Segment-Beispiel.
quelle