Forum: Mikrocontroller und Digitale Elektronik LCD funktioniert nicht


von Kai H. (kai_h)


Angehängte Dateien:

Lesenswert?

Hallo,
ich hab versucht ein LCD mit meinem ATmega32 zu steuern, allerdings 
funktioniert das nicht wirklich....
Die Verdrahtung hab ich jetzt schon öfters nachgemessen und JTAG ist 
deaktiviert. Ich hab keine Ahnung mehr wo der Fehler sein könnte, ich 
hoffe ihr könnt mir da weiterhelfen. Den Code und die Fusbebits habe ich 
als Bild angehängt.

MfG
Kai

von Karl H. (kbuchegg)


Lesenswert?

Port A?
Hast du Avcc angeschlossen?

von Thomas D. (thomasderbastler)


Lesenswert?

Pin R/W am LCD an GND ?

Was wird genau angezeigt ? Schwarze Balken ? Verdrahtung ?
Meldung Compiler ?

von Thomas D. (thomasderbastler)


Lesenswert?

probiere mal lieber so :

Config Lcdpin = Pin , Rs = Portb.1 , E = Portb.2 , Db4 = Portb.3 , Db5 = 
Portb.4 , Db6 = Portb.5 , Db7 = Portc.0
Config Lcd = 16 * 2


do
Locate 1 , 1
Lcd "Hallo"
Locate 2,1
Lcd "Na sowas"

Loop

von Luca E. (derlucae98)


Lesenswert?

Verwendest du das Display im 4 Bit Modus?
Wenn ja dann:
1
config lcdbus = 4

von Kai H. (kai_h)


Lesenswert?

Ich hab alle Pins vom LCD, die nicht benutzt werden auf GND gelegt, die 
Belelgung auf Portb und Portc und das config lcdbus habe ich auch 
eingebaut, allerdings wird immer noch nichts angezeigt.
Auch durch initlcd passiert nichts und das Display zeigt einfach nichts 
an, nur wenn ich an dem Kontrast-Poti drehe kommen irgendwann in der 
ersten Zeile schwarze Kästen.
Beim Übertragen kommt keine Fehlermeldung oder sowas.
Wo könnte der Fehler noch liegen?

von ... (Gast)


Lesenswert?

Lass doch erstmal eine LED am Port A blinken zur Kontrolle.

von Kai H. (kai_h)


Lesenswert?

Die LED blinkt jetzt so wie sie soll....
1
 Config Lcdpin = Pin , Rs = Portb.1 , E = Portb.2 , Db4 = Portb.3 , Db5 = Portb.4 , Db6 = Portb.5 , Db7 = Portc.0
2
 Config Lcd = 16 * 2
3
 Config Lcdbus = 4
4
5
 Config Porta.0 = Output
6
7
 Initlcd
8
9
10
11
Do
12
13
Cls
14
Locate 1 , 1
15
Lcd "Hallo"
16
Locate 2 , 1
17
Lcd "Na sowas"
18
Toggle Porta.0
19
Waitms 2000
20
21
Loop
22
23
End

von Karl H. (kbuchegg)


Lesenswert?

Dann wirds wohl mal Zeit für ein Photo von deinem Aufbau.
Aber bitte so, dass man die Verdrahtung nachvollziehen kann.

von Karl H. (kbuchegg)


Lesenswert?

>  nur wenn ich an dem Kontrast-Poti drehe kommen irgendwann in der ersten Zeile 
schwarze Kästen.

Ähm. das soll auch so sein.
Du willst die schwarzen Kästchen sehen.
Also dreh das Poti so, dass diese Kästchen gut und scharf sichtbar sind.

Wenn das LCD dann irgendwann intialisiert, dann löscht es diese 
schwarzen Kästchen und du siehst dafür den Text.
Stellst du den Kontrast so ein, dass du auch die Kästchen nicht siehst, 
dann wirst du auch den Text nicht sehen. Genau dafür sind die Kästchen 
da: damit man mit ihnen den Kontrast so einstellen kann, dass man am LCD 
was sieht.

von ... (Gast)


Lesenswert?

Gerade fällt mir auf, Du setzt Port A nicht auf Ausgang. Füge ganz oben 
ein:
DDRA = &HFF

von ... (Gast)


Lesenswert?

Oder auch für Port B. DDRB = &HFF

von Kai H. (kai_h)


Lesenswert?

Ich hab gerade nochmal alles durchgemessen und dabei habe ich auch mal 
alle Pins gegeneinander gemessen. Ich habe das Pollin evaluation board 
und ich hab einmal den E Pin mit dem passenden Port verbunden und einmal 
wollte ich R/W auf Masse legen und habe aber den E Pin auf GND 
gelegt......

Jetzt läuft es, danke für die Hilfe und das nächste Mal messe ich sowas 
gleich durch ;)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.