Hallo, vor einem halben Jahr etwa habe ich mich mit meinem 160x128px LCD an einem 2313 versucht und hatte leider nicht viel Glück. Da ich im Moment ein Prjekt plane, wanderten die Sachen gestern wieder auf meinen Basteltisch und ich bin auch ein bisschen weitergekommen... Das LCD wird initialisiert, gelöscht (zum testen mit den Werten einer Variable einer Zählschleife) aber es ist immer noch nicht möglich Text auszugeben so wie ich es mir vorstelle. --schnipp-- start: rcall init rcall pause rcall lcd_clear_text ldi comm, 0x97 rcall lcd_command ;Display Modus 97=Text, 98=Grafik, 9F=Text+Grafik ldi data, 0x22 rcall lcd_data ldi comm, 0xC0 rcall lcd_command ;flush character --schnapp-- Zuerst wird das LCD inistialisiert und dann der Textspiecher mit 20x16 Zeichen "gelöscht". Komischweise beginnen jetzt die Probleme: 1. Wenn ich nach dem Aufruf von lcd_clear_text nicht weiter schreibe ist auch nichs auf dem LCD zu sehen. Zuerst habe ich ein weiteres init ausgeführt mit dem Ergebnis dass dann die Zeichen aus der lcd_clear_text Funktion zu sehen waren und der Cursor links oben blinkt - so soll es sein! Also versucht rauszufinden was aus der init Funktion dazu führt dass man was sieht: ldi comm, 0x97 rcall lcd_command Also die Einstellung dass ich nur Text darstellen will. Nun gut, warum das so ist bleibt mir ein Räsel 2. Will ich jetzt irgendeinen Text ausgeben entweder so wie oben in dem Codefetzen oder mit "autodata mod" ist wieder nichts zu sehen. Also killt jede Textausgabe das Display auf sonderbare Art und weise und ich hab nicht den Hauch einer Ahnung woran das liegen könnte. Infos: Das LCD ist 100% ok und läuft am PC angeschlossen wunderbar. Wegen der laufenden Löschung des LCD Rams mit der autodata Funktion liegt das Problem definitiv in der Software... aber wo? Ich hab den Code mal angehängt und wenn ihr Ideen oder einen laufenen Code parat habt.. immer her damit :) Mailen könnt ihr mir auch an marco.v@gmx.de So dann wünsche ich euch allem mal einen schönen Sonntag. Vielleicht liest man sich ja bald.
Hier mal ein (leider ziemlich unscharfes) Foto dass ich gerade mit meinem Handy gemacht hab. Nur damit ihr euch mehr darunter vorstellen könnt :)
Hallo, hast du bei der Initialisierung den Text und Grafik Bereich definiert ? Vor der Textausgabe den Adresspointer gesetzt ? Klack
Also ich initialisiere: - Text Home Adresse - Zeilenlänge - Cursor Position - Adress Pointer Nach dem Löschen des LCDs wird der Cursor und der Adress Pointer wieder auf 0/0 gesetzt (siehe auch meinen Code) Alles nur für Text da ich klein anfangen will :)
Also ich hatte mal probleme mit dem Automode, dann habe ich immer das T3 Flag abgefragt, dieses sagt ja "Ready for next Data write" danach hat es funkioniert. Das gleiche Flag frage ich auch zuerst ab wen ich in den Normal Modus wechsle. Klack
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.