Ich habe hier heute versucht ein 2*16 LCD-Display mit HD44780-Controller an einen ATMEGA16L anzuschließen, der mit einem externen 8MHz Quarz und einer Betriebsspannung von 5V läuft. Ich versuche dabei momentan gerade, das Display im 8bit Modus mit dem lcd-example aus der avrlib anzusprechen. Die Anschlussbelegung sieht dabei folgendermaßen aus: DB0->PD0 DB1->PD1 DB2->PD2 DB3->PD3 DB4->PD4 DB5->PD5 DB6->PD6 DB7->PD7 RS->PC2 RW->PC3 E->PC4 Hier ein Auszug aus meiner lcdconf.h, in der ich Änderungen vorgenommen habe (von PORTA auf PORTD umgestellt): #ifdef LCD_PORT_INTERFACE #ifndef LCD_CTRL_PORT // port and pins you will use for control lines #define LCD_CTRL_PORT PORTC #define LCD_CTRL_DDR DDRC #define LCD_CTRL_RS 2 #define LCD_CTRL_RW 3 #define LCD_CTRL_E 4 #endif #ifndef LCD_DATA_POUT // port you will use for data lines #define LCD_DATA_POUT PORTD #define LCD_DATA_PIN PIND #define LCD_DATA_DDR DDRD // access mode you will use (default is 8bit unless 4bit is selected) //#define LCD_DATA_4BIT #endif #endif Ausserdem habe ich noch in der global.h eingestellt, dass der Prozessor mit 8MHz läuft. Allerdings erscheint auf dem Display kein Text, sondern ich sehe nur diese üblichen schwarzen Balken in der 1. Zeile. Ich habe auch schon mal veruscht die "data-lines" an PORTA zu betreiben, wie es bei dem Beispiel voreingestellt ist, aber es zeigt sich dieselbe Wirkung. Achja, nur so am Rande, aber so wie im mikrocontroller.net AVR-Tutorial beschrieben, im 4bit-Modus, gelang es mir das Display in Betrieb zu nehmen.
So habs selbst gelöst. Musste die JTAGEN-Fuse deaktivieren, da durch diese die Control-Pins an PORTC blockiert wurden.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.