LCD 2x16 nur 1 Balken

Gast #49485
Hallo,
ich baue gerade das Tutorial nach und habe mir ein 2x16 Display
gekauft, dachte ich jedenfalls und es steht auch auf der Verpackung
drauf.
Denkste!
Da lege ich die 5V an Vdd und GND an Vss, Kontrast auch GND, aber was
passiert? Nur ein Balken auf dem Display, zwar mit herrlichem Kontrast,
aber was nu?

Habe PIN 1-14 so wie es im Tutorial steht. 15 und 16 habe ich auch
noch, aber der Verkäufer hat gemeint, dass es ohne
Hintergrundbeleuchtung wäre...

Ich bin ratlos! Auf dem Display steht nichts drauf, auf der Verpackung
steht 2x16.
Jedenfalls wird nur 1 Balken angezeigt und das komische ist, dass er
genau in der oberen Hälfte ist, die untere Hälfte leuchtet nicht
dunkel.
Kaputt oder 1x16 oder sonst was? Sowas schon mal jemand erlebt?
Gast
Vss  ->  GND
Vdd (oder wie`s im Tut. steht: Vcc) -> 5V
Kontrastspannung -> GND (Poti war nicht nötig)

1 Balken leuchtet wunderbar, ich denke mir jetzt, wenns ein 1x16 wäre,
dann wäre der Balken zentriert, ist er aber nicht, es würde genau ein
2. reinpassen.

Angeschlossen ist es jedenfalls, wie es das Datenblatt erfordert. Dass
Vss auf GND liegt ist schon richtig.
Gast
Ey, also bei mir sahs am Anfang genau so aus.
Ich hab die ganze Zeit etwas mit der Initialisierung Falsch gemacht,
als dann alles korrekt war, begann auch die zweite Zeile an leicht
schwarz zu leuchten....

Könnte gut ein solches Prob sein.

Mfg Nik
Gast
Werde etwas rumspielen - soviel ich jetzt verstanden habe, sparen sich
da die Hersteller nur ein paar IC's und das Datenblatt habe ich auch
noch nicht intus.

Hat mir jedenfalls schon geholfen, war kurz davor alles wieder
zurückzubringen :)
Gast
Hi

Also bei meinen LCD´s leuchtet immer nur die erste Zeile ich dachte
immer das sei so richtig weil ja die zweite zeile dann auch geht wenn
ich die daten dort hin schicke. Zweite zeile fängt mit c0-Hex an und
die zeile 1 mit 01-Hex.


mfg Frank
Gast
@thkais:

Also ich habe jetzt das LCD so an den 4433 angeschlossen, wie es im
tutorial steht.

Ich habe den µC vor gut zwei Wochen bekommen und bin gerade dabei mich
etwas in Assembler einzuarbeiten. Den I/O - Teil habe ich noch
wunderbar verstanden, naja, es funktionierte jedenfalls.

Ich benutze TAVRASM, aber ich bekomme bei dem im Tutorial vorgestellten
Testprogramm immer einen Fehler!

### aus lcd-test.asm - fürn 4433 ###

.include "4433def.inc"   <---------- anstatt des M8 hab ich meinen
                                     reingeschrieben, wie im I/O-Teil

#### die folgende Zeile mag TAVRASM nicht!!!
#### bekomme immer einen Fehler
#### Error: undefined variable referenced in I/O port address
####        out SPH, temp1

ldi temp1, HIGH(RAMEND)     ; HIGH-Byte der obersten RAM-Adresse
           out SPH, temp1

was ist falsch?
Gast
Hi!
Man man man, die Piesastudie untertreibt ja noch, die können ja noch
nicht mal lesen! Wie wäre es denn mal mit Datenblatt studieren!

"4433" hat kein "SPH" sondern nur "SP" !

MFG Uwe
Gast
@Alex
ich glaube nicht, daß Du ein einzeiliges Display hast (da wäre der
Balken in der Mitte). Hast Du schon mal probiert, auf der 2. Zeile
etwas auszugeben? Vorsicht, die Adressen beginnen, glaub' ich, bei
$40...
Daß beim einschalten nur der oberste Balken erscheint, kommt evtl.
daher, daß Du Kontrast auf Masse gelegt hast. Mit Poti hast Du die
Möglichkeit, den Koontrast einzustellen und dann sollte auch der zweite
Balken sichtbar werden :-)
Edgar
Gast
@Edgar:
Mit Kontrasteinstellen kriegt man den zweiten Balken nicht, es sei
denn, man hätte getrennte Kontrasteinstellmöglichkeiten (puh, was ein
Wort). Die zweite Zeile kommt erst, wenn der Display-Controller richtig
initialisiert wird.

@Uwe:
Wer im Glashaus sitzt... Als Anfänger kanns schon mal passieren, dass
man Feinheiten wie SP und SPH (noch) nicht unterscheiden kann. Da muß
man nicht gleich persönlich werden.
Gast
Eigendlich schon erwähnt, aber...
Wenn man das LCD nicht auf zweizeiligen Betrieb initialisiert hat, dann
erscheint auch die zweite Zeile nicht, die erste hingegen kann man auch
ohne Darstellung mit dem Kontrast sichtbar machen.
Im AVR Tutorial passiert das hierdurch:
ldi temp1, 0b00101000        ;noch was einstellen...
rcall lcd_command
Gast
Hi,

also nach meinem Wissensstand ist das so mit den (meisten)LCD´s. Wenn
man den Contrast auf GND legt, ist der Contrast am Stärksten. Bei
meinen LCD´s mach ich das zum Testen auch so.

Wenn das LCD nicht initialisiert wird, ist die erste Zeile immer
Schwarz.
2 zeilige--> 1. Zeile
4 zeilige--> 1. u. 3. Zeile schwarz.

Also wenn das der Fall ist, dann stimmt bei der Initialisierung des
Displays was nicht

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.