hallo zusammen Ich habe ein LCD Display mit 4x20 Char. Betreibe dies mit dem 8-Bit modus, nicht SPI (ist so gefordert). Ich bin schon seit 2 Tagen verzweifelt am suchen, was welcher Anschluss das RE Bit ist, hier das Datenblatt: http://www.lcd-module.de/fileadmin/pdf/doma/dip204-6.pdf auch auf dem Datenblatt des KS0073 finde ich nur immer das RE Bit müsse 1 oder 0 sein, aber ich habe nur 4 anschlüsse neben den D0...D7 nämmlich RES, RS, R/W, E welches dieser 4 anschlüsse ist hier das RE Bit das überall so schön angegeben wird... oder wie setzt man das? Ich danke für die Antworten! :) Grüsse Chrischu91
Hi Das RE-Bit ist im Funktion Set-Befehl (Bit2). MfG Spess
Das RE-bit setzt oder löschst du mit dem function-Set-'Befehl'. Um Befehle mit RE=1 zu senden musst du per Function-Set, RE auf 1 setzen. Um dann wieder bspw. Display-Clear verwenden zu können muss es wieder per Function-Set auf 0 gesetzt werden. Grüße Mark
Danke euch beiden dir Spess :) Aber welcher anschluss ist nun hier gemeint von den 4: RES, RS, R/W, E? oder kannst du mir sagen wie ich das RE-Bit auf 1 oder 0 schalten kann? Ich weiss nicht genau wie ich das anbringen soll? :s Mfg Chrischu
Hi >Aber welcher anschluss ist nun hier gemeint von den 4: RES, RS, R/W, E? >oder kannst du mir sagen wie ich das RE-Bit auf 1 oder 0 schalten kann? Kein Anschluss. Siehe Beitrag von Mark L. (m2k10). MfG Spess
Hmm also wenn ich das richtig verstehe muss ich wie auf Datenblatt http://www.lcd-module.de/eng/pdf/zubehoer/ks0073.pdf seite 63 punkt 2 das RE-bit setzen und dann mit punkt 4 wieder löschen? also so habe ich es gemacht, aber es funktioniert nicht :s Mfg Chrischu
Muß man das RE-Bit überhaupt setzen? Es scheinen doch alle notwendigen Funktionen auch im Standardmodus verfügbar zu sein. Peter
Der 4-Zeilen-Modus lässt sich nur mit gesetztem RE-bit aktivieren. @chrischu91: Versuch doch mal die Initialisierung von Seite58, die sieht zuverlässiger aus als die von Seite 63. Falls du mit Warteschleifen arbeitest, einfach mal die Wartezeit verdoppeln, manchmal sind die zu knapp. Der E-Puls könnte auch zu kurz sein (hier ist übrigens das Datenblatt falsch, die 100ns bei 4.5V müssten wohl 1000ns sein!!!) Oder einfach mal mit der Software aus dem AVR-Tutorial ausprobieren, ob die läuft. Manche Controller (bspw. ST9720) vertragen im Function-Set nur jeweils eine Änderung auf einmal, d.h. für bspw. 2-Zeilen und RE=1 muss Function-Set zweimal aufgerufen werden. Mark
So sollte es gehen. lcd_command(0x24); // RE-Bit Setzen (Funktion Set) lcd_command(0x09); // Ext. Funktion Set ( FW=0: 5-dot font width; BW=0: normal cursor; NW=1: 4-line display lcd_command(0x20); // RE- Bit wieder Zurück setzen; lcd_command(0x0C); // Display On/Off Control ( D=1: display on; C=0: cursor off; B=0: blink off ) lcd_command(0x01); // Display Löschen lcd_command(0x06); // Entry Mode Set ( Cursor moving direction (I/D=1: inc; shift enable bit (S=0: disable)
Hab ganz vergessen zu erwähnen, das dass Beispiel für den 4 - Bit Modus gilt. lcd_command(0x24); // RE-Bit Setzen (Funktion Set) sets interface data length (DL=0:4-bit;
ok danke werde es morgen ausprobieren, habe 8 bit, aber ist ja nicht schwierig umzuwandeln ;)
Noch ein Hinweis! Die Initalisierung läuft ganz normal ab wie bei einem HD44780 nur Also vorher 3 Mal 0x30 senden danach die oben erwähnten Befehle einfügen. Das wars aber jetzt viel erfolg!
Also habe das jetzt ausprobiert, ich habe ein 8bit ansteuerung und keine 4 bit, aber dies umzuschreiben ist ja nicht sehr schwierig, ich habe alles nach datenblatt gemacht, aber nun folgende 3 sachen die nicht funktionieren: 1 - beim Display sind nur 2 Zeilen aktiv 2 - nach 12 Zeichen springt es auf die nächste Zeile, schreibt dann auf der oberen sowie auf der unteren zeile weiter... 3 - 0xA0 (0x20) bringt mich nicht auf die nächste zeile, sondern führt zum absturz des Displays... Punkt 2 ist aber so wie auf seite 13 des datenblattes KS0073 dass der displaykontroller nur 12 statt 20 Zeichen pro zeile hat... aber wie steuere ich das an, das es nicht automatisch auf die nächste zeile springt? Punkt 1: wie kann ich die andern 2 zeilen aktivieren, ich habe alles schön nach datenblatt gemacht und auch die einzelnen befehle genau durchgelesen und studiert... und wieso führt punkt 3 zum absturz des displays... ich finde das ganze display oder datenblatt ist ein bisschen merkwürdig :s wenn mir jemand irgend ein fehler zeigen kann den ich mache, oder etwas nicht stimmt, wäre ich sehr froh, danke! Mfg Chrischu
Habe den Fehler gefunden Ich hatte zu wenig Zeit genommen habe jetzt das Delay von 100 us auf 3ms geändert, und jetzt funktioniert alles ohne probleme, danke euch nochmals :)
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.