Re: Problem mit Initialisierung Display EAT123A Kategorie: I²C-Bus (von André H. - 9.04.2008 10:51) | ||
Als Antwort auf Problem mit Initialisierung Display EAT123A von Norbert - 1.04.2008 13:30 | ||
| ||
Hallo Norbert, zuerst eine Frage: Arbeitest Du komplett ohne OS? Denn in C2 wäre es einfacher. :-) Das Datenblatt des Displays enthält leider nciht alle nötigen Informationen. Aber ich würde sagen, da� für Function Set auf jeden Fall der 8Bit-Mode genutzt werden mu�. Der 4-Zeilen-Modus sollte passen. Ansonsten kannst Du den 2x24Zeichen-Modus testen. Beim Entry-Mode sollte Inkrement gewählt werden. Ansonsten erfolgt die Ausgabe rückwärts ab Cursor-Position. Ach ja, das Löschen des Displays sollte immer erst am Ende des Inits erfolgen. Auch mu� für den Init zuerst ein Control-Byte mit Co=0 gesendet werden. Mehr kann ich nicht helfen, da ich das Display nicht nutze. MfG André H. > Hallo Zusammen, > > ich benötige eure Hilfe bei der Initialisierung des I2C Displays > EAT123A. > Problem ist, das der Text nur dann richtig positioniert angezeigt wird, > wenn er incrementiert ist I/D-Bit = 1. Dann wird der Text, nach erstem > RESET, sofort in Zeile 1 rechts angezeigt, jedoch gespiegelt! > Sobald ich auf Decrement umstelle, erscheint der Text erst nach einigen > RESET-Betätigungen und dann aber auch nicht ab dem ersten Zeichen! > Der Fehler liegt 100% in der INIT, denn ein anderes Display > funktioniert! > Denk mal ich mach einen Fehler bei der Zeilenwahl oder was meint Ihr? > Hoffe Ihr könnt mir helfen! > Hier meine Init in Assembler: > > LCD_Init: > > mov a,#74h ;Slave Adresse > call send > mov a,#01h ; Display löschen > call send > call wait_5 > mov a,#2Eh ; Funktionset, 4Bit, 4lines x 12Char, Spg intern > call send > mov a,#0Fh ; Display ON, Cursor ON, Cursor blinkt > call send > mov a,#04h ; Entry_Mode, Decrement, Display freeze > call send > call stop > ret > > > Im Hauptprogramm lautet der Aufruf: > > Haupt: > > call start > call LCD_Init > call wait_2 > mov a,#74h ; Slave Adresse > call send > mov a,#01000000b ; Controll-Byte Write DATA > call send > > ;....hier würde nun der entspr. Text anhand einer Schleife kommen > > call stop > > Hoffe Ihr findet meinen Fehler! Bestimmt mach ich etwas falsch bezüglich > der Zeilenadressierung. Aber leider wei� ich nicht wo :-)! > > Vielen Dank und schönen Tag noch! > > Norbert Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: |