www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LC Display ansteuern


Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Ich möchte statt einer 7Segment anzeige ein LC Display verwenden wie das 
hier z.b.:  http://www.reichelt.de/?ACTION=3;ARTICLE=10181;PROVID=2402

Von denen hab ich mehr als genug zuhause rumfahren. So wie macht man das 
jetzt: Ich hab gelesen, dass man dafür 100Hz braucht damit die Kristalle 
nicht anfangen Elektrolyse zu betreiben. Allerdings möchte ich 2 Display 
gleichzeitig Ansteuern. Wie macht man jetzt sowas. Ich hab Seiten 
gesehen bei denen ein Display angesteuert wird aber nie 2. Ich möchte 
nur ungern 2 µC verwenden, lieber Schieberegister ohne Ende.

Ist es richtig das man die Display direkt mit 5V betreibt?
Könnte man einfach das eine Display für eine hunderstel Sekunde 
ansteuern und dann das andere für eine hunderstel Sekunde?

Meine Idee wäre:

1. Schieberegister setzen
2. Display 1 Masse durchschalten (per NPN)
3. 1/50s warten
4. Display 1 Masse sperren
5. Wieder setzen
6. Display 2 Masse durchschalten
7. 1/50s warten
8. Display 2 Masse sperren
9. Das ganze invertiert

geht das?

Autor: sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mal ein ähnliches Display (6-stellig, aber auch statisch wie 
dieses) mit 6x CD4056 und Schieberegistern 74HC164 angesteuert. Geht 
prinzipiell, aber wenn der Takt nicht genau 50% Tastverhältnis hat, geht 
das Display nach einer Weile in die Binsen.

Zur Sache: Wenn viel Treiberlogik kein Problem ist, einfach beide 
Backplanes parallel schalten und das ganze als ein Display mit der 
doppelten Segmentanzahl behandeln. Jedes Segment einzeln, alle im 
Gleichtakt. Ganz easy.
Was nicht so toll geht, ist durch abwechselndes Ansteuern der Backplanes 
das ganze wie ein 2:1-Mux-Display zu behandeln. Würde ich ehrlich gesagt 
lieber lassen. Mit ein- und ausschalten ist es nämlich nicht getan - 
Backplanes und Segmente müssen regelmäßig umgepolt werden. Das heißt, 
alle Segmentausgänge und die Backplane werden mit dem Displaytakt 
invertiert - eine XOR-Verknüpfung aus Displayinhalt und Taktsignal, 
logisch gesehen.

Dies kann man sich auch abnehmen lassen - vielleicht wären ja auch zwei 
dieser Treiberbausteine, einer für jedes Display, ganz nett: 
http://www.pollin.de/shop/dt/NTYwOTk4OTk-/Baueleme...
Da ist der Taktgenerator schon drin, man kann die wunderbar über Chip 
Select kaskadieren, und der Stromverbrauch ist minimal - auch für 
Batterie oder Solarbetrieb geeignet.

Geht aber nur für Ziffern, also numerischen Displayinhalt, da mit 
internem Decoder.

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Allerdings möchte ich 2 Display gleichzeitig Ansteuern.

Da ein Display eine Backplane hat
(so was ist gut, das ist einfach anzusteuern)

hast du 2 Schaltmöglichkeiten:

Die Backplanes verbinden, und doppelt so viele Segmentanschlüsse zu 
Ausgangspins vom uC legen, willst du sicher nicht (ist aber schwer 
schwer anzuraten, norfalls ein uC mit mehr Pins oder extern mit 74HC595 
oder 74HC273 die Anzahl der Ausgangspins erhöhen)

oder

Alle (gleichnamigen) Segmente verbinden und die Backplanes getrennt 
ansteuern (das schwebt dir wohl vor).

Letzteres führt du Multiplexen von LCD, und das ist ein Problem, weil 
LCD im Gegensatz zu LEDs nicht sperren. Man braucht exakt an die LCD 
angepasste Spannungen: Die Hälfte darf noch nicht zur Schwärzung führen, 
die volle Spannung muss zur Schwärzung führen. Und weil Flüssigkristalle 
temperaturanhängig sind, bedeutet daß, daß man die Spannung regeln muss, 
das bekannte Trimmpoti von alphanumerischen Dotmaxtrixanzeigen. Da du 
zusätzlich noch LCD verwendest, die gar nicht für Multiplexbetrieb 
ausgelegt sind, ist eventuell das Flüssigkristall nicht mal gut geeignet 
dafür. Also viel Spass.

Die Ansteuierung lautet:
Backplane 1 auf VCC/2, Backplane 2 auf VCC
Segmente die von Display 2 an sein sollen auf GND, Sgemente die aus sein 
sollen auf VCC
Backplane 1 auf VCC, Backplane 2 auf VCC/2
Segmente die von Display 1 an sein sollen auf GND, Sgemente die aus sein 
sollen auf VCC
Backplane 1 auf VCC/2, Backplane 2 auf GND
Segmente die von Display 2 an sein sollen auf VCC, Sgemente die aus sein 
sollen auf GND
Backplane 1 auf GND, Backplane 2 auf VCC/2
Segmente die von Display 1 an sein sollen auf VCC, Sgemente die aus sein 
sollen auf GND
von vorne

wobei VCC je nach Display und Umgebungstemperatur so 2V bis 6V betragen 
muss.

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sebastian schrieb:
> Geht aber nur für Ziffern, also numerischen Displayinhalt, da mit
> internem Decoder.

Ich hab 3 1/2 LCD, das heißt kann die 1 noch ansteuern, aber die 
Sonderzeichen nicht. Wenn mir nicht anderes übrig bleibt nimm ich das. 
Die Variante mit dem 1/2Vcc gefällt mir. Ich möchte mein Projekt 
allerdings auf 2-3V Basis aufbauen. Ich hoffe das reicht. Ich mach jetzt 
mal einen Schaltplan.

ähh warum haben die in eagle com und com1??? Und den , -- BC und den 
Pfeilnach unten anscluss versteh ich nicht.

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, in eagle wird das Display multiplext, in reichelt auch. Bei mir muss 
ich mal schauen. Wenn das display 2 commons hat, ist es doch für 
multipleing ausgelegt, oder?

Man kann doch auch die Commons verbinden um kein multiplexen zu machen.
Das Eagle LCD kann nur multi, gibt eine runterladbare bibliothek für 
kein multipl. betrieb?

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du es einfach willst: NXP PCF8577C, 2.30€ bei Reichelt

Ansteuerung über I2C.

fchk

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank K. schrieb:
> PCF8577C

Sieht einfach aus, allerdings fehlt mir im Datenblatt ein 
Connectiondiagramm für 64Segmente. 2 Dispay haben ja 64. Wenn ich das 
richtig gesehen habe braucht man dafür 2 von denen ICs. In reichelt 
steht aber 64Segment Treiber? Kann mich einer aufklären?

Achja 2 möchte ich nicht kaufen, da sogar 8 Schieberegister billiger 
sind.

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Ding hat doch einen zweiten Backplane-Ausgang. BP1 an COM vom ersten 
Display, A2/BP2 an COM vom zweiten Display, die Segmentleitungen an 
beide Displays parallel, und im Chip den Duplex-Modus anschalten. Ich 
habe es nicht ausprobiert, aber eigentlich sollte es so laufen.

fchk

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sry hab ich übersehen. Muss das ding mal ausprobieren, aber ehrlich 
gesagt das Datenblatt vom Max7219 war einfacher gestaltet.

Gibts den auch in eagle? Und die LC ANzeige, gibts die in eagle auch mit 
nur einer common?

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Samuel K. schrieb:

> Gibts den auch in eagle? Und die LC ANzeige, gibts die in eagle auch mit
> nur einer common?

Selber machen. So schwer ist es nun auch nicht nicht, in Eagle eigene 
lbrs zu basteln.

fchk

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank K. schrieb:
> Selber machen. So schwer ist es nun auch nicht nicht, in Eagle eigene
> lbrs zu basteln.

Weiß ich, vorgefertigt geht es halt schneller.

Ich werde jetzt aber eh target benutzen, da Platinen 80*100 nicht 
reichen.

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> aber ehrlich gesagt das Datenblatt vom Max7219 war einfacher gestaltet

KLar, das war ja auch für was einfacheres.

Irgendwann ist halt die geistige Leistungsgrenze erreicht.

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
MaWin schrieb:
> Irgendwann ist halt die geistige Leistungsgrenze erreicht.

Hahaha

Ich meinte zur Ansteuerung war mehr angegeben, nicht das ich es nicht 
verstehe!

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es empfiehlt sich zu prüfen, ob die beiden Backplane-Anschlüsse 
tatsächlich zwei separate Backplanes sind, oder ein und dieselbe, 
herausgeführt auf zwei Pins.
In dem bei Pollin verlinkten Maxim-Datenblatt wird übrigens gegen Ende 
recht ausführlich auf die Ansteuerung der Sondersymbole eingegangen. Es 
ist durchaus möglich, dafür gezielt Segmente zu mißbrauchen.
Allerdings könnte es sein, daß der Maxim-LCD-Treiber bei 3 Volt nicht 
mehr arbeitet, da kommt es wohl auf einen Versuch an.

Viel Erfolg beim Basteln.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.