mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Hilfe: 4x20 LCD Schaltmodus


Autor: baby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe eine LCD 4x20 bei Conrad gekauft, weiss aber nicht wie man im 
Assembler 4 lines modus einschalten.
Für 2 lines modus habe ich gefunden: LCD_2line = 0b00101000 entspricht 
28h. Und 1 line modus ist  : LCD_1line = 0b00100000 entspricht 20h.

Und wie ist es mit 4 line modus?

Vielen Dank für eure Hilfe!

Autor: MdeWendt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

lade dich doch mal von Conrad das Datenblatt herunter (unter 
Datenblattserive -> Bestellnr.). Dort stehen alle Register und deren 
Funktion drin.

Martin

Autor: baby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank Martin

Ich habe das Datenblatt gefunden.

Baby

Autor: hebel23 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn ich mich recht erinnere, haben die 4x20 Displays 2 
HD44780-Kontroller. Der eine steuert die oberen 2 Zeilen und der andere 
die unteren 2. Die Steuerleitungen sind alle parallel geschaltet - bis 
auf die Enableleitung. Du musst die beiden oberen und unteren Zeilen 
also ansprechen, als wären es 2 getrennte Displays in dem du einmal den 
E1-Pin(obere zwei) und einmal den E2-Pin(untere zwei) zur Datenübergabe 
benutzt.

Gruß Andreas

Autor: MdeWendt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Andreas,

bist du dir da sicher? Ich habe zwar bisher nur 16*4 Displays benutzt - 
die haben einen Anschluss wie zB die 16*1. Nur der Adressbereich ist 
grösser.


Martin

Autor: hebel23 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Martin,

ja, ich bin sicher. Ich habe aber gleich noch mal eine Recherche 
gestartet: Es gibt sowohl die eine als auch die andere Variante. Ein 
Beispiel für ein Display mit 2 Enableleitungen unter folgendem Link:

http://www.mpi.ch/attach/000001f6.PDF

Gruß Andreas

Autor: Rudolf Sosnowsky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die meisten 4x20-Displays haben einen einzigen Controller. Die dritte 
Zeile ist die Fortsetzung der ersten, und die vierte die der zweiten. 
Erst die 4x40-Displays haben einen zweiten Controller. Für baby ist es 
deshalb wichtig zu wissen, dass sein/ihr Display in Duty 1:16 läuft, und 
deshalb als "2-line display" initialisiert werden muß. Um die Zeichen 
dann in die richtigen Zeilen zu verteilen, ist halt etwas Software 
nötig.

Gruß, Rudolf.

Rudolf Sosnowsky +++ LC Design
EPSON Technology Partner
Internet http://www.LC-Design.de

Autor: baby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen

Eure Erklärung kann ich ein bisschen aufmachen. Für besser Verstehen 
könnt ihr ein Programmchen schreiben, das "LCD" am Display anzeigt mit 
4Bit oder 8Bit, für Atmega163.

Danke, Baby

Autor: baby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Programm in Assembler.
Noch etwas, ich habe mal probiert mit 16x2 Programme in Codesammlung, 
aber es ist nicht gegangen. Wenn ich den Strom an den Modul hängen, 
bekomme ich zwei schwarz Balken 1. und 3. Zeile. Mit dem Kontras habe 
ich auch versucht. Bleibt erfolglos.

Baby

Autor: Rudolf Sosnowsky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Baby,

ich habe leider kein passendes Programm. Deiner Beschreibung nach 
funktioniert schon die Initialisierung nicht. Wichtig ist, dass bei der 
Initialisierung die Delays eingehalten werden, dass das Timing so wie im 
Datenblatt dargestellt realisiert wird (Setup- und Hold-Zeiten), und 
dass die Flanken zwar steil genug sind (<20ns), aber andererseits nicht 
überschiessen (Doppel-Triggerung). Ist Dein Kabel kurz genug?

Gruß, Rudolf.

Rudolf Sosnowsky +++ LC Design
EPSON Technology Partner
Internet http://www.LC-Design.de

Autor: baby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Rudolf

Kabel von Port zu LCD beträgt 1m zu lang?

Ich schneide jetzt ab, und melde mich wieder.

Baby

Autor: baby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, es geht auch nicht. Ich habe das Programm im Code Sammlung: LCD 
2x16 Display 4-bit unter 
http://www.mikrocontroller.net/attachment.php/662/...
auch versucht, aber...pech.

Gruss

Autor: Rudolf Sosnowsky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stimmt die Pinbelegung? Die ist etwas eigenwillig, aber durchaus 
möglich. Verdrahtungsfehler/Kurzschluß? Sind die restlichen 
Datenleitungen (D0...D3) offen bzw. auf High-Pegel? Wie hoch ist Deine 
Taktfrequenz? Du musst evtll. die Delay-Konstante anpassen.

Gruß, Rudolf.

Rudolf Sosnowsky +++ LC Design
EPSON Technology Partner
Internet http://www.LC-Design.de

Autor: A.Füßer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Rudolf: Wie lange sollte/darf so ein Kabel denn sein? Ich hatte schon 
bei 40cm Probleme, bei 25cm gings dann. Wie sind die Erfahrungswerte?

Danke,
 André.

--
CAN@home - http://www.CANathome.de - Hausautomation mit AVR + CAN

Autor: Rudolf Sosnowsky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@André:
Die Kabellänge kann man nicht pauschal festlegen. Es spielen zu 
unterschiedliche Faktoren eine Rolle, z.B. die Treiberleistung auf der 
CPU-Seite. Zwei Beispiele.

1. Wir hatten ein Board, das ein Display über mit 74HC245 gepufferte 
Leitungen ansteuerte. Die Flanken waren so steil, dass die Signale auf 
Nachbarleitungen übersprachen und am "offenen Ende" des LCD-Controllers 
stark über Vcc und unter Gnd hinaus schossen. Erst mit einer 
Terminierung konnten die Signale gebändigt werden, damit der 
LCD-Controller 100% einwandfei lief.

2. Display direkt an den Port-Leitungen unseres Rechners mit dem 
M16C/62. Dieser Prozessor ist derartig EMV-optimiert, dass die Signale 
auch nach einer längeren Leitung (getestet bis ca. 1m) einwandfrei 
aussahen und der LCD-Controller funktionierte.

Im Zweifelsfall hilft, die Signale mit einem ausreichend schnellen 
Oszilloskop anzuschauen und zu mit Terminierungen an Treiber- oder 
Controllerseite zu optimieren.

Gruß, Rudolf.

Rudolf Sosnowsky +++ LC Design
EPSON Technology Partner
Internet http://www.LC-Design.de

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.