Forum: Mikrocontroller und Digitale Elektronik Ansteuerung von 7 Segment LCDs


von Johannes B. (jhony1104)


Lesenswert?

Ich möchte mit einem ATXmega128B3 das LCD-Display "DE119-RS-20/6,35" 
Ansteuern.

Allerdings muss bei dem Display jedes Segment einzeln angesteuert werden 
und der XMega B Controller verfügt über die Ausgänge SEG0-SEG24 und 
COM0-COM3.

Kann mir bitte jemand mitteilen, wie ich das Display Ansteuern kann.

Falls das nicht möglich sein sollte, bitte ein anderes vergleichbares (4 
Stellen a 7 Segmente mit Dezimalpunkten) Display vorschlagen.

Danke schon mal im voraus.



LCD Ansteuerung mit Atmel XMEGA B:
http://www.atmel.com/Images/doc8467.pdf

DE119-RS-20/6,35 Datenblatt:
http://www.reichelt.de/index.html?;ACTION=7;LA=3;OPEN=0;INDEX=0;FILENAME=A500%252FLCD40-13.pdf;SID=13UI-Od38AAAIAAClyCUw6eed4294c36d9d7c82277152eebe0874

von Stefan (Gast)


Lesenswert?

Geht so nicht. Du brauchst eine Matrix-Anzeige. Anstatt ein fertiges 
Modul zu suchen, kannst Du ganz einfach einzelne 7-Segment Anzeigen 
zusammenschalten. Verbinde die sieben segmente parallel zusammen und 
steuere die verbleibenden COM einzeln an.

von Stefan (Gast)


Lesenswert?

Ach, sorry. Es geht ja um LCD, nicht um LED Anzeigen. Da kauft man 
natürlich keine einzel-Module.

von Axel S. (a-za-z0-9)


Lesenswert?

Johannes B. schrieb:
> Ich möchte mit einem ATXmega128B3 das LCD-Display "DE119-RS-20/6,35"
> Ansteuern.
>
> Allerdings muss bei dem Display jedes Segment einzeln angesteuert werden
> und der XMega B Controller verfügt über die Ausgänge SEG0-SEG24 und
> COM0-COM3.

Dann geht es nicht. Das Display hat eine gemeinsame Backplane. Du 
brauchst also 4*(7+1) = 32 Segmentleitungen. Das von dir verlinkte PDF 
behauptet, ein XMega hätte 40, aber du sagst du hättest nur 24.

> Kann mir bitte jemand mitteilen, wie ich das Display Ansteuern kann.

Diese Art LC-Displays werden so angesteuert, daß man eine 
Wechselspannung von ca. 100Hz an die Backplane legt. Alle Segmente, die 
"aus" sein sollen, bekommen die gleiche Wechselspannung, alle die "an" 
sein sollen bekommen die invertierte (180° phasenverschoben) 
Wechselspannung. Wobei Wechselspannung hier ein Logiksignal von 1.5V..9V 
CMOS Pegel meint (je nachdem wieviel Spannung das LCD verträgt bzw 
braucht).

Im Prinzip reichen 32 GPIO mit 32 XOR-Gattern und ein 33. GPIO oder 
externer Oszillator, der das Signal für die Backplane erzeugt.


XL

von Johannes B. (jhony1104)


Lesenswert?

Danke für die Antwort.
leider löst sie mein Problem aber nicht. Kann mir daher bitte jemand ein 
alternatives Display (also mit mehreren, getrennten Backplans) 
vorschlagen.



> Das von dir verlinkte PDF behauptet, ein XMega hätte 40, aber du sagst du
> hättest nur 24.

Es bezieht sich auf die Xmega B Reihe im allgemeinen. Die B3 Modelle 
haben aber nur 25.

von Jack B. (jackbraun)


Lesenswert?

Das DOGM 081 hat 8 Stellen, ist schön groß und kann über SPI angesteuert
werden. Außerdem kann es an 3,3V und 5V betrieben werden. Ich hab es
schon öfter eingesetzt.

Grüße

Jack

von Frank K. (fchk)


Lesenswert?

Johannes B. schrieb:
> Ich möchte mit einem ATXmega128B3 das LCD-Display "DE119-RS-20/6,35"
> Ansteuern.
>
> Allerdings muss bei dem Display jedes Segment einzeln angesteuert werden
> und der XMega B Controller verfügt über die Ausgänge SEG0-SEG24 und
> COM0-COM3.
>
> Kann mir bitte jemand mitteilen, wie ich das Display Ansteuern kann.

Diese Displays müssen mit Wechselspannung angesteuert werden, um die 
Zersetzung der Flüssigkristalle zu verhindern. Dafür gibt es spezielle 
Bausteine z.B. von NXP. Für Dich ist z.B. der PCF8577C geeignet, den Du 
über I2C ansteuerst, oder der OM4068, der per SPI angesteuert wird.

fchk

von W.S. (Gast)


Lesenswert?

Johannes B. schrieb:
> Danke für die Antwort.
> leider löst sie mein Problem aber nicht.

Tja, zumindest hast du erkannt, daß es etwas schwieriger wird, als mal 
eben bloß ein paar Pins miteinander zu verbinden. Für alles Weitere wäre 
es durchaus angebracht, nach einer eigenen Lösung zu suchen.

Ich geb dir mal nen Tip:
a) es gibt vermutlich auch bei den AVR's Typen, die schlicht und einfach 
genug Portbeine haben, um damit die Pins des LCD zu bedienen und bei 
einer Frequenz von 100 .. 200 Hz für den Polaritätswechsel kommt man 
spielend mit ner Interrupt-Routine aus.
b) es gibt auch CMOS-Schieberegister, um die Anzahl benötigter Portbeine 
zu reduzieren.

Ansonsten mußt du gucken, ob du irgendwo anders organisierte LCD's 
bekommst. Aber ich sag dir, das wird schwierig, weil sowas zumeist auf 
Kundenwunsch-LCD's hinausläuft.

W.S.

von Spess53 (Gast)


Lesenswert?

Hi

Es gibt doch auch LCD-Treiber, z.B.:

PCF8576CHL/1 oder  PCF8576D.

MfG Spess

von Axel S. (a-za-z0-9)


Lesenswert?

Johannes B. schrieb:
> Danke für die Antwort. leider löst sie mein Problem aber nicht.

Natürlich nicht. Du hast dir einfach zwei nicht zusammen passende 
Bauteile ausgesucht.

> Kann mir daher bitte jemand ein
> alternatives Display (also mit mehreren, getrennten Backplans)
> vorschlagen.

Heute verbaut niemand mehr "nackte" Standard-LCD wie das von dir 
genannte. Das waren früher schon Spezialbauteile zur Verwendung mit 
anderen Spezialbauteilen (in der gezeigten Variante für Uhren, andere 
für Multimeter).

Wenn heute jemand nackte LCD verbaut, dann auf die Anwendung 
zugeschnittene Spezialdisplays. Was sich aber erst bei großen 
Stückzahlen lohnt. Standard-LCD kommen heute mit eingebautem Controller, 
entweder alphanumerisch oder grafikfähig.


XL

von Frank K. (fchk)


Lesenswert?

Axel Schwenke schrieb:

> Heute verbaut niemand mehr "nackte" Standard-LCD wie das von dir
> genannte.

Einen Grund gäbe es doch, diese Displays zu verwenden: Stromverbrauch! 
Segmentierte Displays sind sehr sparsam, und dieses hier ist noch dazu 
ein statisches, d.h. eines mit nur einer Backplane, also ein extra 
sparsames. Ideal für batteriebetriebene Geräte. Für solche nimmt man 
aber keinen XMega, sondern z.B. einen MSP430. Davon gibt es auch viele 
Typen mit LCD-Controller. Der Fragesteller hat aber wahrscheinlich einen 
auf AVR beschränkten Horizont.

fchk

von kein (Gast)


Angehängte Dateien:

Lesenswert?

Bei mir läuft das an 4 hintereinander gehängten Schieberegistern 
74HC164.
Zur Ansteuerung reichen dann 2 Leitungen: Clock und Data. Nachdem die 
32Bit Segmentdaten hineingeschoben sind wird die Data Leitung zur 
Ansteuerung beider COM Anschlüsse der Backlane benutzt.
D.h. zur Erzeugung der Wechselspannung wird z.B. alle 20ms derselbe 
Datensatz invertiert und neu hineingeschoben und danach der Pegel der 
Backplane(Data Leitung) invertiert.

Beitrag #7082631 wurde von einem Moderator gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.