Hallo TBA789!
Ein Test nach dem Anderen ausprobieren:
Entstöre die Stromzufuhr des LCD mit einem Kondensator. So wie hier in diesem Bild: http://halvar.at/elektronik/kleiner_...tmega8_v13.gif
Achte dabei darauf, dass der Kondensator nahe am LCD liegt.
Stelle HWSTACK, SWSTACK und FRAME auf jeweils 100. So wie hier beschrieben: http://halvar.at/elektronik/kleiner_...mega8-atmega16
Ändere deine LCD-Konfiguration und verbinde das LCD dementsprechend.
Code:
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.3 , Rs = Portc.2
Achte also darauf, dass 7 auf 7 kommt, 5 auf 5, usw.
Stelle sicher, dass dein µC auch wirlich mit 4 MHz läuft. Schreibe dazu ein Programm, welches eine LED alle 10 sec. ein-/ausschaltet. Stimmt das mit den 10 Sekunden, dann ist die Frequenz korrekt eingestellt.
Probiere nicht nur PortC aus, sondern hänge das LCD auch mal an PortB.
Du kannst mit CONFIG LCD auch den Chipsatz einstellen. Siehe: http://avrhelp.mcselec.com/index.html?config_lcd.htm
Probiere die verschiedenen CHIPSET-Einstellungen aus.
Stelle den Takt des µC auf 1 MHz zurück und probiere dann noch einmal. (aus Verzweiflung -- einfach mal ausprobieren)
Auf dieser Seite http://halvar.at/elektronik/kleiner_...d_textanzeige/ ganz unten, sind noch ein paar Links. Folge diesen Links und hole dir damit alle wichtigen Informationen über die Ansteuerung von LCDs. Vielleicht findest du damit heraus, was schief läuft.
Kaufe dir ein anderes LCD. Eines bei dem dabei steht, dass es kompatibel zum HD44780-Chip ist.
mfg
Gerold
:-)
Lesezeichen