mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD-Display


Autor: Jan Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
hab ein problem mit der LCD ansteuerung.
Hab nach dem Tutorial mein 16x2 LCD angeschlossen, steuere es im 4-Bit
Modus an, aber es ist nur die obere Zeile verfügbar. Beim einschalten
ohne software ist auch nur oben ein schwarzer Balken zu sehen. Unten
kann kein Text angezeigt werden.

Ich verwende einen AT90S1200 ...

Danke
Jan

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das Display hat keinen fortlaufenden Adressraum,die 2.Teile beginnt
wahscheinlich bei 0x20.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hattest du den schon Text auf dem Display?

Die 2te Zeile musst du erst per Befehl anschalten.

Bei einer Zeile kann es sein das du wegen des Kontrast nicht siehst,
dass was angezeigt wird. Häng mal ein Poti an die Kontrastleitung.

Autor: Jan Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also

ldi temp1, 0x20

nochmal weiter unten für die zweite zeile angeben, oder wie ?

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die 2te zeile an ist dan siehst du dort bei vollem kontrast die
Blöcke. Sind die da?

Wenn die nicht da sind und sich auch durch den Befehl nicht einschalten
lassen dann stimmt was am timing nicht.

Autor: Jan Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja, habe schon text auf dem display, aber nur oben...
wie schalte ich die zweite zeile ein ?

Autor: Jan Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die blöcke sind nicht da

Autor: Jan Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie schalte ich die zweite zeile an ???

Autor: leo9 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Datenblatt lesen und entsprechenden Wert ins Control-Register
schreiben.

grüsse leo9

Autor: Neun-elfer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
normal startet die 2.zeile bei 0x40. zumindest bei mir

zb so:


Outline2:

  ldi temp1, 0b11000000  ;set DDRAM addresse 40 => 2.Zeile
  rcall lcd_command


  print2:

    lpm
    tst R0
    breq print2_end
    mov temp1,R0
    rcall lcd_data
    adiw ZL,1
    rjmp print2

  print2_end:

ret

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Initialisierung zweizeilig:

 ;Initialisierung: muss ganz am Anfang des Programms aufgerufen werden
lcd_init:
           ldi  temp3,50
powerupwait:
           rcall  delay5ms
           dec  temp3
           brne  powerupwait
           ldi temp1, 0b00000011        ;muss 3mal hintereinander
gesendet
           out PORTD, temp1             ;werden zur Initialisierung
           rcall lcd_enable             ;1
           rcall delay5ms
           rcall lcd_enable             ;2
           rcall delay5ms
           rcall lcd_enable             ;und 3!
           rcall delay5ms
           ldi temp1, 0b00000010        ;4bit-Modus einstellen
           out PORTD, temp1
           rcall lcd_enable
           rcall delay5ms
           ldi temp1, 0b00101000        ;noch was einstellen...
           rcall lcd_command
           ldi temp1, 0b00001100        ;...nochwas...
           rcall lcd_command
           ldi temp1, 0b00000100        ;endlich fertig
           rcall lcd_command
           ret

Gruß

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.