PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : LCD zeigt nichts an :-(



dennis1986
13.03.2005, 16:01
Hallo,

ich möchte eine LCD Display an Atmega8515 betreiben in 4 bit modus. LCd ist das 162 von Reichelt. (16*2)

Die Pinbelegung ist:

"Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.3 , Rs = Porta.2 "

Bei einschalten der Spannung geht nur die Hintergrundbeleuchtung an.´Es tauchen keine Zeichen oder Balken auf.

Als Testpogramm habe ich folgendes geladen:





$crystal = 16000000
$regfile = "m8515.dat"
$baud = 19200
Config Lcd = 16 * 2

Dim N As Integer
Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.3 , Rs = Porta.2




Config Lcd = 16 * 2


Cls
Lcd "Erster Test"
Lowerline
Lcd "Hallo Welt!!!"

End


Brauche Hilfe!

madcyborg
13.03.2005, 16:09
was hast du mit dem kontrast-pin gemacht? legt den mal testweise direkt auf masse, dann müssen zumindest balken da sein.
dann kanns aber sein, das der kontrast so hoch ist das man wieder keine zeichen sieht-->widerstand/potir zwisachen masse und kontrast.

dennis1986
13.03.2005, 16:25
habe ich gemach, habe den pin direkt auf gnd gelegt.

habe auch schon versucht ihn direkt auf 5V zu legen aber beides ohne ervolg

madcyborg
13.03.2005, 16:32
hm...komisch. so als neulng kann ich nix falsches am code entdecken, ich hab grad erst orgestern nen lcd ans laufen gebracht, und mein code war/ist fast genau wie deiner, also keine unterschiede die was ausmachen würden...
hast du masse von avr und lcd miteinander verbunden?
und was macht das lcd wenn du nur betriebspannung und masse/kontrast auf masse anlegst? quasi ohne jede weitere belegung?

dennis1986
13.03.2005, 16:53
habe jetzt das display so weit das ich in der oberern zeile schwarze punkte habe. aber anzeigen zut es noch nicht wirklich was...

madcyborg
13.03.2005, 17:02
was denn für punkte?
und mit system oder durcheinander?
sind vielleicht die datenports in der falschen reihenfolge oder sowas?

dennis1986
13.03.2005, 17:07
durcheinander also manche von den feldern in der ersten reihe sind kommplett ausgefüllt, und bei anderen fehlt ein strich /4 punkte untereinander)

madcyborg
13.03.2005, 17:12
hm..unter welchen bedingungen ist das jetzt?
ist der avr dran und wenn, ist er an oder aus?

dennis1986
13.03.2005, 17:17
avr dann ich werde gleich noch mal meine pinbelegung überprüfen

dennis1986
13.03.2005, 17:54
so habe meinen text in eine schleife gesetzt mit "do" am anfang und "loop" am ende.

der balken in der ersten Zeile flacker jetzt auch. aber habe noch immer keinen plan wieso der nichts anzeigt

Gerhard
13.03.2005, 18:43
hast Du im Bascom unter Options/Compiler/LCD auch den 4-bit Modus
eingestellt ??
mfg Gerhard

dennis1986
13.03.2005, 18:50
ja habe ich gemacht, aber mir gegrissel in der ersten zeile ist nicht zu sehen

dennis1986
13.03.2005, 18:53
aber eine änderung der schrift was er´anzeigen soll, hat eine änderung des gekrssels, was zu sehen ist zu folge.... weiss aber nicht worann es liegen kann

madcyborg
13.03.2005, 20:04
woher hastn das lcd?(neu oder gebaucht?)
und kriegst du ohne jedliche belegung wenigsten die balken hin?
ansonsten hatte ichs bei meinen ersten lcd-versuchen (für den pc über parallelport), so ähnlich, da hatte ich einfach nur mies gelötet...

dennis1986
13.03.2005, 20:13
mhh, ich habe mir überlegt es morgen mal an 8 bit anzuschließen...ich denke das es am display liegt. habe im internet gelesen das einige typen von der Firma Displaytech proble im 4 bit modus haben sollen... mal sehn obs dann geht

aber das display ist neu

gandalf
13.03.2005, 22:41
Hallo Dennis,
ich hab dein Prog getestet und kann sagen es funktioniert !

Hier ist der Anschluß des LCD:

'LCD mit HD44780 kompatiblem Controller
'Anschluß
'LCD Pin 1 = 0Volt (GND)
'LCD Pin 2 = +5 Volt (VDD)
'LCD Pin 3 = 0-5 Volt Kontrast (V0): Poti 10k zwischen 0V und 5V Schleifer an LCD3
'LCD Pin 4 = RS an PortA.2
'LCD Pin 5 = R/W an +5V
'LCD Pin 6 = E an Porta.3
'LCD Pin 7 = DB0 'frei
'LCD Pin 8 = DB1 'frei
'LCD Pin 9 = DB2 'frei
'LCD Pin 10 = DB3 'frei
'LCD Pin 11 = DB4 an Porta.4
'LCD Pin 12 = DB5 an Porta.5
'LCD Pin 13 = DB6 an Porta.6
'LCD Pin 14 = DB7 an Porta.7

Wo Kommentare sind, hab ich dein prog leicht überarbeitet.


**Korrektur: 'LCD Pin 5 = R/W muß an GND ** Danke Gerhard ! **






'Fehlersuche

'LCD mit HD44780 kompatiblem Controller
'Anschluß
'LCD Pin 1 = 0Volt (GND)
'LCD Pin 2 = +5 Volt (VDD)
'LCD Pin 3 = 0-5 Volt Kontrast (V0): Poti 10k zwischen 0V und 5V Schleifer an LCD3
'LCD Pin 4 = RS an PortA.2
'LCD Pin 5 = R/W an GND * Fehler GND ist richtig! *
'LCD Pin 6 = E an Porta.3
'LCD Pin 7 = DB0 'frei
'LCD Pin 8 = DB1 'frei
'LCD Pin 9 = DB2 'frei
'LCD Pin 10 = DB3 'frei
'LCD Pin 11 = DB4 an Porta.4
'LCD Pin 12 = DB5 an Porta.5
'LCD Pin 13 = DB6 an Porta.6
'LCD Pin 14 = DB7 an Porta.7

'_________________________________________________ ____________

$crystal = 16000000
'$regfile = "m8515.dat" 'auskommentiert, denn ich verwende ATMega16
$regfile = "m16def.dat"

'$baud = 19200 'brauchen wir hier nicht

Config Lcd = 16 * 2


Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.3 , Rs = Porta.2

Initlcd 'initialisiert das LCD

'--------------------------------------------------------------

Do 'Begin Hauptschleife
Cls
Upperline 'setzt Cursor in die obere Zeile
Lcd "Erster Test"
Lowerline
Lcd "Hallo Welt!!!"

Wait 1 'wartet 1 sekunde
Cls 'löscht LCD
Wait 1 'wartet 1s und schreibt erneut

Loop 'erneut aufrufen
End



Viel Erfolg Bernd

" Das zentrale Problem wird leicht übersehn ! " (Dietrich Drahtlos)

Hei.Mor
14.03.2005, 08:28
Hallo Bernd,

du hast geschrieben R/W an +5V, ich habe es immer mit GND gelesen,
funktioniert mein LCD deshalb nicht oder hast du dich vertippt?

Gruß
Heinz, dessen 8*2 Conrad Display immer noch nicht geht

Gerhard
14.03.2005, 08:47
ohne Bernd vorgreifen zu wollen .....
... R/W zum schreiben auf GND ist schon ok.
siehe hier:
http://www.sprut.de/electronic/lcd/index.htm

mfg Gerhard


edit: hast Du denn auch "lcdinit" (siehe listing Bernd) übernommen ?

Hei.Mor
14.03.2005, 08:56
Hallo Gerhard,

ja, habe ich auch schon probiert. Danke.
Kannst ja mal in meinen Hilferuf paar Themen weiter schaun (8*2 Display Conrad).
Vielleicht kommt bascom damit nicht zurecht, da es ja kein 8*2 gibt, nur 16*2

Gruß
Heinz

14.03.2005, 09:31
[quote="Gerhard"]ohne Bernd vorgreifen zu wollen .....
... R/W zum schreiben auf GND ist schon ok.

Stimmt , sri ich habe das vom Programmer übernomen ohne nachzumessen,
(ist bei mir fest verdrahtet).
ALSO :... R/W zum schreiben auf GND ist schon ok.

Danke Gerhard !

14.03.2005, 17:45
hallo,

ich wollte das display mal testweise ansteuern. aber beim compellieren habe ich immer fehler bei "DB1", "DB2" und "DB3"
in der LCD einstellung habe ich schon auf 8 bit umgestellt....

Rage_Empire
25.07.2005, 11:59
mir ist aufgefallen, daß in dem Code die Initialisierung des LCDs fehlt.




Vieleicht hilft das:


http://www.mikrocontroller.net/forum/read-4-114302.html

hardstyleroxx
03.10.2005, 17:33
Ich versuche auch gerade ein LCD anzusteuern, aber es will einfach nichts anzeigen ausser 2 Schwarzen Balken (Ist ein 20x4)

Ist am meinem Code irgentwas falsch?




$regfile = M8def.dat
$crystal = 3686400

Ddrc = &B11111111

Config Lcd = 20 * 4 ' größe des LCDs
Config Lcdpin = Pin , E = Portb.5 , Rs = Portb.0 , Db7 = Portb.1 , Db6 = Portb.2 , Db5 = Portb.3 , Db4 = Portb.4 'pinbelegung

Initlcd 'initialisiert das LCD

'--------------------------------------------------------------

Do 'Begin Hauptschleife
Cls
Upperline 'setzt Cursor in die obere Zeile
Lcd "Erster Test"
Lowerline
Lcd "Hallo Welt!!!"

Wait 1 'wartet 1 sekunde
Cls 'löscht LCD
Wait 1 'wartet 1s und schreibt erneut

Loop 'erneut aufrufen
End

hardstyleroxx
03.10.2005, 22:06
Das ist mein LCD:

http://www.dst-gmbh.de/avkat/av2040.htm

Ich versuche nun schon 3 Stunden mit irgentwelchen Tips die ich in der SuFu gefunden habe das LCD zum laufen zu bekommen, aber irgentwie will das nicht. Habe gerade nochmal alle Lötungen und die Verdrahtung überprüft und konnte keinen Fehler finden!
Bis auf 2 Schwarze Balken kommt einfach nichts :(

fzehner
04.10.2005, 17:46
Hast Du schon mal den Kontrast verändert?

hardstyleroxx
04.10.2005, 18:21
Klar habe ich, dann wurden die Balken immer heller/dunkler.
Habe nun aber noch ein LCD im Keller gefunden und werde das gleich mal testen. Das hat wenigstens einen HD44780 Controller!