Hi Leute, ich hab hier folgendes LCD (https://www.displaytech-us.com/20x4-character-lcd-displays-a) rumliegen, und versuche es mit einem LPC2919 Evaluation Board zu betreiben. Auf dem Board hab ich zugriff auf 5V,3.3V und GND. Der uC liefert als Ausgang 3.3V. Meine Routine hat auf dem PIC mit 5V funktioniert, jetzt geht das LCD nur an, und zeigt 2 zeilen komplett hell an, und die anderen 2 Zeilen blau. Ich nehm an es liegt daran, dass der High-Pegel des LCDs 0.8*Vcc ist und deshalb die 3.3V nicht ausreichen um das Display richtig zu initialisieren. Falls dies stimmt, was wäre eine passende lösung? zwischen uC und LCD relais schalten, die 5V/0V schalten? Oder gibt es da bessere Lösungen? Angeschlossen Habe ich das LCD bisher so: Pin 1: GND Pin 2: 5V Pin 3: GND (Hat beim letzten mal so gut hingehaun) pin 4-14 uC (nur die für 4 Bit modus) pin 15: 3.3V pin 16: GND Dank euch für die Hilfe ;)
>Ich nehm an es liegt daran, dass der High-Pegel des LCDs 0.8*Vcc ist und >deshalb die 3.3V nicht ausreichen um das Display richtig zu >initialisieren. 3.3V reicht meist auch aus. Wenn man das Display zu schnell ansteuert wird es nicht richtig initialisiert. >Falls dies stimmt, was wäre eine passende lösung? Zwei 74HCT125 als Pegelwandler. Oder das Display auch mit 3.3V betreiben und eine negative Kontrastspannung anlegen. Kann man z.B. von einem MAX232 abgreifen falls einer vorhanden ist.
@ Manuel Bali (desteini) >Ich nehm an es liegt daran, dass der High-Pegel des LCDs 0.8*Vcc ist und >deshalb die 3.3V nicht ausreichen um das Display richtig zu >initialisieren. Ja. >Falls dies stimmt, was wäre eine passende lösung? Entweder Pegelwandler für die Signale, sind ja nur unidirektional. 74HCT244 & Co. Oder das LCD mit 3,3v betreiben und eine negative Kontrastspannung generieren. http://elm-chan.org/docs/lcd/lcd3v.html >pin 15: 3.3V >pin 16: GND Das macht man aber nicht. Dort hängen meist die LEDs der Hintergrundbeleuchtung DIREKT dran, da fehtl der Vorwiderstand. Zum Glück sind 3,3V zu wenig, meist haben die LEDs 4,2V Flußspannung ;-)
Hier habe ich unter anderem was zum Betrieb von HD44780 kompatiblen LCDs mit 3.3V geschrieben: Beitrag "[ASM & C] HD44780 an PIC24 (3.3V oder 5V)"
Liest Du Daten vom Display zurück? ZB das Busy Flag? Wenn nicht, dann nimm einfach ein 74HCT541 oder 74HCT244 (ungünstigeres Layout gegenüber dem 541). Die Eingänge der HCT-Serie haben die für 3.3V CMOS passenden Schaltschwellen. Alternative: Viele Textmodus-Displays funktionieren auch mit Vcc=3.3V einwandfrei. Du brauchst dann aber eine negative Kontrastspannung, die Du am einfachsten mit einem ICL7660 und zwei 10µ Kondensatoren erzeugst. Dann 10k Poti zwischen Vcc und Vneg vom 7660 und den Schleifer an Pin 3 des Displays. Du kannst auch mit einem Rechtecksignal vom Prozessor und einigen Dioden und Kondensatoren eine negative Spannung erzeugen, aber der Weg mit dem 7660 ist idiotensicherer und funktioniert auch ohne Prozessor. Mit 3.3V sind die Textmodus-Displays langsamer, gegenüber der 5V Implementation musst Du also die Delays so ca. 30-50% größer wählen. fchk
Manuel Bali schrieb: > zwischen uC und LCD relais schalten, die 5V/0V schalten? Ein Relais ist einen Faktor 10000 zu langsam und klappert zu sehr, i.e. wenn es "klack" macht, wird der Kontakt meist mehrere Male auf und zu gemacht. Das ist nichts für eine digitale Datenübertragung.
Das ging mal schnell, danke! >Ein Relais ist einen Faktor 10000 zu langsam und klappert zu sehr, i.e. >wenn es "klack" macht, wird der Kontakt meist mehrere Male auf und zu >gemacht. Das ist nichts für eine digitale Datenübertragung. Ja das mit der Geschwindigkeit dacht ich mir schon... >Liest Du Daten vom Display zurück? ZB das Busy Flag? Wenn nicht, dann >nimm einfach ein 74HCT541 oder 74HCT244 (ungünstigeres Layout gegenüber >dem 541). Die Eingänge der HCT-Serie haben die für 3.3V CMOS passenden >Schaltschwellen. Ich lese nur, also werd ich wohl zu den Pegelwandlern greifen. (Idiotensicher) >Zwei 74HCT125 als Pegelwandler. Wieso denn nur 2 Pegelwandler? Versteh ich was falsch, oder muss ich die Pegelwandler nich zwischen jede Datenleitung und Display haun? sprich 6 Pegelwandler? Als erstes werd ich Morgen mal die Wartezeit verdoppeln, um zu schauen ob es vllt doch ohne funktioniert. Danke für die schnelle Hilfe ;)
>>Zwei 74HCT125 als Pegelwandler. > >Wieso denn nur 2 Pegelwandler? Da sind jeweils vier Gatter drin.
Ich persönlich verwende als Pegelwandler immer 74HCT245. Von dem reicht ein IC und er ist leichter zu Routen. Manuel Bali schrieb: > Als erstes werd ich Morgen mal die Wartezeit verdoppeln, um zu schauen > ob es vllt doch ohne funktioniert. Wenn das LCD an 5V hängt, wir des nicht viel bringen nur die Delays zu verdoppeln.
:
Bearbeitet durch User
Hast Du es schon mit einer sehr kurzen Verbindung, zwischen LCD u. µC, versucht? Ka ob das was bringt, interessiert mich nur.
:
Bearbeitet durch User
>Wenn das LCD an 5V hängt, wir des nicht viel bringen nur die Delays zu >verdoppeln. Also besser an 3.3 V hängen und dann doppeln? >Hast Du es schon mit einer sehr kurzen Verbindung, zwischen LCD u. µC, >versucht? Naja sie Kabel sind nur 10cm lang, weiß nich obs nen großen Unterschied machen würde, außerdem brauch ich die Länge, von daher ist das kaum ein Versuch wert für mich.
>>Wenn das LCD an 5V hängt, wir des nicht viel bringen nur die Delays zu >>verdoppeln. >Also besser an 3.3 V hängen und dann doppeln? Nein. Vieleicht sind deine Delays so schon zu kurz. Hast du da mal nachgemessen? Zu lang geht immer. Also mal ordentlich was draufpacken.
>Nein. Vieleicht sind deine Delays so schon zu kurz. >Hast du da mal nachgemessen? Zu lang geht immer. >Also mal ordentlich was draufpacken. Das LCD dass schon auf dem Evoboard ist (ist für meinen Zweck aber nicht ausreichend) läuft mit diesen Delays. Trotzdem werd ichs mal mit ordentlich mehr versuchen ;) >Manuel, danke. 10cm sind mir kurz genug :) Gern geschehen =)
>Das LCD dass schon auf dem Evoboard ist (ist für meinen Zweck aber nicht >ausreichend) läuft mit diesen Delays. Da könnte man ja glatt auf die Idee kommen das das andere Display nicht korrekt angeschlossen ist;) >Trotzdem werd ichs mal mit >ordentlich mehr versuchen ;) Ja, mach das. Schaden tut es jedenfalls nichts.
>Da könnte man ja glatt auf die Idee kommen das das andere >Display nicht korrekt angeschlossen ist;) Zum Glück hat ich die Idee auch schon ;) Glaub mir ich hab einiges probiert bevor ich überhaupt draufgekommen bin, dass es an den 3,3V liegen könnte. Das andere Display wird wohl ein 3.3V sein, oder hat eben nen entsprechenden Schaltplan =)
So auf der Suche nach dem IC bin ich auf den hier gestoßen: 74HCT541N. Für was steht das N? die Bauform? Hab en haufen Abwandlungen gefunden mit nem SN davor, oder ein D am Ende, kann mir kurz jemand erklären, was der Unterschied ist? Und zum Betrieb, OE1 und OE2, (output enable input LOW), werden einfach an Masse gehängt oder versteh ich da was falsch? Versteh nicht wirklich für was die da sind. Ansonsten gibts ja nur noch GND und Power, und die einzelnen in und outputs =)
Manuel Bali schrieb: > So auf der Suche nach dem IC bin ich auf den hier gestoßen: > 74HCT541N. Für was steht das N? die Bauform? Hab en haufen Abwandlungen > gefunden mit nem SN davor, oder ein D am Ende, kann mir kurz jemand > erklären, was der Unterschied ist? Das Datenblatt des entsprechenden Herstellers sagt es Dir. SN weist auf TI als Hersteller hin. Das Suffix steht meist für die Gehäuseform, N=DIP, D,DW=SOIC(W), PW=TSSOP und kann von Hersteller zu Hersteller verschieden sein. Schau ins passende Datenblatt, da stehts drin. > Und zum Betrieb, OE1 und OE2, (output enable input LOW), werden einfach > an Masse gehängt oder versteh ich da was falsch? Versteh nicht wirklich > für was die da sind. Auch das steht im Datenblatt drin. Lesen bildet. Wirklich! "The Output Enables (!OE1) and (!OE2) control the Three-State Outputs. If either !OE1 or !OE2 is HIGH the outputs will be in the high impedance state. For data output !OE1 and !OE2 both must be LOW.! fchk
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.