PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] LCD Problem



NXTman
01.12.2012, 23:12
Hallo,
Ich habe ein Problem mit meinem LCD-Modul. Ich habe alles richtig an mein (Atmel Evaluations) Board angeschlossen (im 4-Bit Modus). Wenn ich jetzt den Kontrast einstelle, werden nur die 1. und die 3. Zeile Dunkel.

Ich arbeite mit dem TC1604A von Pollin (http://www.pollin.de/shop/dt/MTczOTc4OTk-/Bauelemente_Bauteile/Aktive_Bauelemente/Displays/LCD_Modul_TC1604A_01.html)
An einem Atmega16

Ich hoffe, jemand kennt das Problem und weis, wie ich es beheben muss.

Gruß nxtman

robo_tom_24
01.12.2012, 23:51
Hast du die Initialisierung vorgenommen?

BMS
02.12.2012, 09:57
Hallo,
wenn die schwarzen Blöcke sichtbar sind, bedeutet das schonmal, dass die Versorgungsspannung und die Kontrastspannung stimmt. Das Display wurde in dem Zustand noch nicht initialisiert.
Hier habe ich vor Monaten mal eine Checkliste erstellt: http://rn-wissen.de/index.php/Textdisplay_Fehlersuche
Grüße, Bernhard

NXTman
02.12.2012, 10:53
Ich schätze, die Initialisierung in dem Programm ist gemeint, oder?
Hier ist der Code, den ich getestet habe: (bascom)


$regfile = "m16def.dat"
$crystal = 4000000

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

Cls
Locate 1 , 1
Lcd "Hallo Welt"
Locate 2 , 1
Lcd "Hallo Welt"
Locate 3 , 1
Lcd "Hallo Welt"
Locate 4 , 1
Lcd "Hallo Welt"

robo_tom_24
02.12.2012, 11:28
Ja, da fehlt die Initialisierung...

NXTman
02.12.2012, 11:30
Wie kann ich die einbauen?

robo_tom_24
02.12.2012, 11:36
Sie mal im Datenblatt nach wie die aussieht, und bau sie dann einfach in "Code" nach ;)

NXTman
02.12.2012, 11:44
Das Datenblatt ist seehr mager, ich weis nicht, was ich dem entnehmen soll http://www.pollin.de/shop/ds/MTczOTc4OTk-.html

Edit: Kann es sein, das mir da JTAG dazwischen funkt?

albundy
02.12.2012, 11:51
hast du JTAG in den FUSE Bits ausgeschaltet ?

- - - Aktualisiert - - -

wenn JTAG an ist, sind PortC.2 - 5 nicht zu benutzen.

robo_tom_24
02.12.2012, 11:56
Kann auch sein, aber wenn du die Initialisierung nicht hast wird sich auch mit ausgeschaltenen JTAG nichts tun....

Wenn ich das grad richtig ergooglet habe ist dort ein Standart HD44780 Controller drauf, und zu dem findet man Unmengen an Initialiserungsfunktionen und Datenblätter ;)

albundy
02.12.2012, 12:01
Laut dem Help für InitLcd ist eine explizite Initialisierung nicht nötig.
"The LCD display is initialized automatic at start up when LCD statements are used by your code."
Aber schaden kann es sicher nicht.

NXTman
02.12.2012, 12:29
Ok, ich habe das LCD jetzt mal komplett an PortD angeschlossen. Jetzt funktioniert es. Aber es ist ja auch keine Lösung, wenn ich PortC nicht komplett ausschöpfen kann. Ich hatte JTAG schonmal ausgeschaltet, aber das ist lange her und ich finde keine Passable Lösung im I-Net. Kennt ihr denn eine?

albundy
02.12.2012, 12:46
JTAG kann man nur über die FUSE Bits deaktivieren.
Womit programmierst du denn ?

NXTman
02.12.2012, 12:51
Mit Bascom.

albundy
02.12.2012, 13:02
ich nehme das AVRStudio, da mein Programmer von Bascom nicht unterstützt wird.
Im AVRStudio ist es ganz einfach.

NXTman
03.12.2012, 16:20
Ok, habe jetzt in Bascom das Fusebit für JTAG umgestellt, jetzt funktioniert alles einwandfrei :)