Hallo zusammen!
Ich bin ein Einsteiger im Gebiet MCs (AVR).
Mein aktuelles Projekt beinhaltet, ein LCD (HD 44780-kompatibel) mit einem ATmega32 anzusteuern.
Ich verwende dazu ein WINTEK WD-C2704M-1HNN mit 4*27 Zeichen im 4-bit Modus.
Meine Verschaltung liegt dabei an PortC.
Die Pinbelegung ist wiefolgt:
Db4 = Portc.4
Db5 = Portc.5
Db6 = Portc.6
Db7 = Portc.7
E = Portc.1
E2 = Portc.0
Rs = Portc.3
DB0-DB3 liegen auf Ground
RW liegt ursprünglich auf PortC.2, habe ich aber testhalber derzeit auf Ground, es ergibt sich aber derzeit kein beobachtbarer Unterschied.
Ich habe im Programm das RN-Wissen genutzt. Der Code ist folgender:Was ich jetzt beobachte ist, dass das LCD alle Felder der jeweils Controllerbezogenen oberen Zeile (d.h. Zeile 1 und 3) komplett dunkel einfärbt und die jeweils untere Zeile (2 und 4) komplett hell.Code:'$lib "lcd4e2.lbx" $regfile = "m32def.dat" $crystal = 1000000 Config Lcd = 40 * 4 Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.1 , E2 = Portc.0 , Rs = Portc.3 Dim ___lcde As Byte ___lcde = 0 'Initlcd Cls Do Upperline Locate 1 , 3 Lcd "Hallo Welt" Waitms 1000 Locate 1 , 3 Lcd "Hello World" Waitms 1000 Loop End
Dies scheint der Zustand des LCDs zu sein, wenn schlichtweg nur Spannung anliegt, weil das LCD während des Programmierens und auch sonst immer das anzeigt.
Der ATmega32 an sich tut korrekt, denn ich habe an ihm schon andere Sachen (LED blinkend,..) vor kurzem ausgeführt. D.h. er wird auch korrekt programmiert und tut.
Was mache ich falsch?
Gruß
E. Hakennase







Zitieren
Lesezeichen