Hallo, ich will ein kleines Logo an meinem LCD anzeigen. Wie ich verstanden habe gibt es 8 Zeichen die man im GC RAM selbst definieren kann. Ich betreibe mein LCD im 4 Bit Modus mit einem ATMEGA 162 am PORT A. PORTA 2 = RS (0 = Instruction input | 1 = Data input) PORTA 3 = E (Enable signal) PORTA 4 = DB4 PORTA 5 = DB5 PORTA 6 = DB6 PORTA 7 = DB7 Mit Bitshift (b=b << 4;) schreibe ich 2 x 4 Bit an DB4-DB7, RS und E werden nicht verändert. Ich sende erst ein Befehl um das erste Zeichen im GC RAM zu beschreiben als Instruction input LCD_cfg(0x84); //0b01001000 und dann die 8 Zeilen als Data input LCD_printchar(0x1F); //0b00011111 LCD_printchar(0x11); //0b00010001 LCD_printchar(0x11); //0b00010001 LCD_printchar(0x11); //0b00010001 LCD_printchar(0x11); //0b00010001 LCD_printchar(0x11); //0b00010001 LCD_printchar(0x11); //0b00010001 LCD_printchar(0x1F); //0b00011111 Danach wechsele ich in den DDRAM mit Instruction input LCD_cfg(0x80); //0b10000000 Diese Infos habe ich in diesem Thread gefeunden. "http://www.mikrocontroller.net/forum/read-1-42674.html" Irgendwie funktioniert das nicht. Ich hoffe ihr könnt mir helfen. Danke, mfg Arthur Bebernik
vielleicht hilft dieser Code etwas weiter: http://www.siwawi.arubi.uni-kl.de/avr_projects/lcdclock/index.html Funktion lcdbiginit in lcdbignum.c. Der Code nutzt Funktionen aus Peter Fleurys LCD-Library (eine etwas aeltere Version ist im Archiv enthalten). Martin Thomas
Hi, was ich eigentlich brauche ist ein Ablauf und was ich zum LCD senden muss. mfg Arthur Bebernik
Was bleibt in dem Code auf der genannten Seite betr. Ablauf und "was senden" unklar?
>LCD_cfg(0x84); //0b01001000
für mich sind das 0x48
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.