www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD Initialisierung


Autor: Barth (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

ich hab schon viel ueber LC-Displays gelesen und wollte jetzt mal selber 
eins ansteuern. Ich bin natuerlich gleich auf Probleme gestossen. Jetzt 
komm ich aber nicht mehr weiter. Und zwar hab ich das Display an ein 
Atmel AT89S8252 angeschossen und bekomm die Initialisierung nicht hin. 
Ich programmiere noch ueber Assembler.

Anschluesse:

E ==> Port 1.2 (92H)
R/W ==> Port 1.1 (91H)
RS ==> Port 1.0 (90H)
DB 0-7 ==> Port 0.0-0.7 (80H-87H)

Ich will das Display ueber 8Bit ansteuern. Der Kontroller ist ein 
KS0070B. 2*16 Zeichen. Das Bisplay hab ich von Reichelt : 
http://www.reichelt.de/Info.html?PriSB9S4AQ4AADnzG... 
.

Ich hab den Kontrast richtig eingestellt aber es ist nur die obere Zeile 
schwarz sichtbar und nicht die Untere.

Hier ist mein Code den ich geschrieben habe :

ORG          0000H

MAIN:        MOV   80H,#00H                         ;Wartet 15ms nach 
Start
             MOV   90H,#00H
             MOV   R0,#0FFH
             MOV   R1,#90

Sch:         DJNZ  R0,Sch
             MOV   R0,#0FFH
             DJNZ  R1,Sch

INI1:        MOV   80H,#00000001B                   ;Clear Display (5ms)
             MOV   R0,#0FFH
             MOV   R1,#30

Sch1:        DJNZ  R0,Sch1
             MOV   R0,#0FFH
             DJNZ  R1,Sch1

INI2:        MOV   80H,#00000010B                   ;Cursor first digit 
(5ms)
             MOV   R0,#0FFH
             MOV   R1,#30
Sch2:        DJNZ  R0,Sch2
             MOV   R0,#0FFH
             DJNZ  R1,Sch2

INI3:        MOV   80H,#00000111B                   ;Increase & Shifted 
(0,160ms)
             MOV   R0,#200
Sch3:        DJNZ  R0,Sch3

INI4:        MOV   80H,#00001100B                   ;Display on & Cursor 
on & Blinking on (0,160ms)
             MOV   R0,#200
Sch4:        DJNZ  R0,Sch4

INI5:        MOV   80H,#00010100B                   ;shift & right 
(0,160ms)
             MOV   R0,#200
Sch5:        DJNZ  R0,Sch5

INI6:        MOV   80H,#00111000B                   ;8BIT & 2Line & 5x7 
(0,160ms)
             MOV   R0,#200
Sch6:        DJNZ  R0,Sch6

INI7:        MOV   80H,#01000000B                   ;CG RAM Data 
(0,160ms)
             MOV   R0,#200
Sch7:        DJNZ  R0,Sch7

INI8:        MOV   80H,#10000000B                   ;DD RAM Data 
(0,160ms)
             MOV   R0,#200
Sch8:        DJNZ  R0,Sch8

Data:        MOV   90H,#00000001B                   ;Write Data in DD 
(0,160ms)
             MOV   80H,#00110000B
             MOV   R0,#200
Sch9:        DJNZ  R0,Sch9
             MOV   90H,#00H

END

Ueber hilfe waere ich sehr dankbar.

MFG

Christian

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Port0 hat beim 8051 keine Pullups. Hast du welche drin?

Matthias

Autor: Barth (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ne hab ich nicht.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

dann mach mal hin

Matthias

Autor: Barth (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke ich hab es jetzt geschaft. Du hattest recht Matthias

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.