www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD: 2 von 4 Zeilen kaputt?


Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo  zusammen!

Bei meinem 4x20-Zeichen-Display werden beim Start nur die 1. und 3.
Zeile mit Strom versorgt (d.h. grau hinterlegt).
In diese Zeilen kann ich problemlos schreiben und in ihnen den Cursor
verschieben. Wenn ich allerdings in die 2. bzw. 4. Zeile springen
möchte (ab Adresse 0x40), um sie zu beschreiben, "verschwindet" der
Cursor im Nichts und nichts passiert.
Muss ich diese Zeilen erst "aktivieren" (2-Line-Modus habe ich
eingestellt) oder muss ich damit rechnen, dass das Display bzw. der
Controller für diese Zeilen kaputt ist?

MfG
Christoph

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das beim Initialisieren nur die erste und dritte Zeile grau hinterlegt
wird ist normal..Du musst beachten das 4 Zeilen Displays 2 Controller
besitzen !!!!! Jeder Controller ist für 2 Zeilen zuständig und du musst
zwischen beiden mittels der richtigen Adressierung hin und her
wechseln...Schau dir mal das Datenblatt genau an..

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erstmal danke für die schnelle Antwort!

So wie ich es im Datenblatt verstehe, funktioniert das Springen in die
2. bzw. 4. Zeile genauso wie das in die 1. bzw. 3. Zeile nur eben mit
anderen Adressen: Sie beginnen bei 0x40 statt bei 0x00. Gibt es
vielleicht einen Steuerbefehl, um zwischen den Controllern
umzuschalten?

Das Datenblatt: http://www.farnell.com/datasheets/51113.pdf

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das "umschalten" geschieht automatisch durch Adressierung.
Du musst zu den angebenen Adressen immer 128 dazu addieren...
Hier mal die Adressen für die jeweils 1. Position der Zeilen:

line1      =0x80
line2      =0xC0
line3      =0x94
line4      =0xD4

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sieht danach aus, als ob die Initialisierung des 2-Line-Modus nicht
funktioniert hat. Am Anfang eventuell mehrmals initialisieren kann
helfen. Manche Displays sind da garstig...

Sven

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das addieren der 128 entspricht einem setzen von DB7 auf 1, richtig?
Ich  bin bei 0x40 usw. nur von DB0-DB6 ausgegangen und habe DB7 sowieso
auf 1 gesetzt (zum Setzen der DDRAM address eben).

Wie sieht das "Umschalten" eigentlich aus? Werden plötzlich die
komplette 2. und 4. Zeile mit Strom versorgt und dunkel hinterlegt oder
nur die entsprechenden Zeichen?

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja richtig das DB7 muss gesetzt sein. vergiss das mit dem umschalten am
besten (hab mich vielleicht etwas blöd ausgedrückt).. es ist wichtig
das Display richtig zu initialisieren!!!! (zeiten einhalten) ein
umschalten in dem sinne erfolgt nicht...du musst dir das so vorstellen
das ein controller für 40 zeichen zuständig ist. da das display über
4x20 zeichen verfügt werden 20 in der ersten zeile und 20 in der
dritten zeile dargestellt. der 2. Controller steuert 20 zeichen der
2.zeile und 20 zeichen der 4. zeile...wenn du einen text schiebst
kannst du das sehr gut beobachten.... ich denke dein fehler liegt beim
initialisieren.....

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine Initialisierungsreihenfolge (teilweise übertrieben fail-save ;)
):

100ms warten  // Zeit zum "Aufwachen" geben
200mal:
 Datenbits 5,4 und 3 setzen // 8 Bit, 2 Lines
Datenbits 3,2 und 1 setzen // Disp On, Cursor On
Datenbit o setzen // Clr Disp

alles großzügig mit delays ausgestattet


Bei dieser Initialisierung lassen sich die 1. und 3. Zeile nutzen, der
Rest halt leider nicht.

Müssten nach der Initialisierung auch die 2. und 4. Zeile grau
hinterlegt (mit Strom versorgt) sein?

Autor: Einer der Bernds (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nur mal so am Rande:

Ein 4x20 Display (wenns 44780 kompatibel ist) hat nur einen COntroller,
weil der Controller 80 Zeichen verwalten und darstellen kann.

Ein 4x40 hat 2 Controller...

Für mich hört sich das übrigens an wie wenn die Initalisierung falsch
gelaufen ist, oder gar nicht gemacht wurde.

Gruß Bernd

Autor: Rennesson (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da muss ich Bernd recht geben habe auch ein 4*20 display und es hat nur
einen controller.
aber das die erste und dritte zeile hell sind ist bei mir auch obwohl
alles funzt.

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.