Guten Tag erfahrene µC-Fans.. LCD: EA W162B-NBLW µC: ATMEGA8 Programmierstation: STK500 Entwicklungsumgebung: AVR Studio 4.13 ich habe ein Problem mit genau einem Sonderzeichen... genauer gesagt das dritte, welches ich ausgeben möchte (Programmiert auf ASCII 0x03). Ich weis nicht ob ihr den kleinen Bausatzroboter ASURO kennt, aber da ist ein ein Beispiel im Erweiterungsbuch, wie man ein Gesicht auf einem Display erzeugt. Ich wollte schließlich nach der super Einführung auf dieser Website das Gesicht in Assemblersprache programmieren. So sollte es sein: http://home.vrweb.de/~alfred.eichstetter/asuro-gesicht1.jpg Aber es ist so: http://home.vrweb.de/~alfred.eichstetter/asuro-gesicht2.jpg Ich sitz jetzt scho mehrere Stunden dran und suche Fehler, hab versucht alle bugs zu zertreten aber ich finds einfach nicht... de blöden drei Punkte... Könnt ihr mir bidde helfen? Mfg Thomas Eichstetter
Dein sonder3 String stimmt zumindest nicht mit dem angezeigten überein. Dein String lautet: sonder3: .db 0x20,0x20,0x02,0x01,0x20,0x20,0x20,0x20,0 Ich würde aber denken, dass das so heisen muss: sonder3: .db 0x20,0x20,0x20,0x02,0x01,0x20,0x20,0x20,0 Probier das mal. Sven
danke für die Rückantwort Ich hatte den Code zuerst auch so aber das hatte dann folgendes Bild ergeben: http://home.vrweb.de/~alfred.eichstetter/asuro-gesicht3.jpg Anscheinend Zeilenverschiebung... Ich habe auch schon das Zeichen in ASCII-Code 0x06 gespeichert mit dem selben Resultat. Um auch auszuschließen, dass es am Display liegt hab ich ein normales, im ASCII-Code enthaltenes A reingeschrieben. Hat funtioniert.... aber immer wenn ich in diesen Teil des Displays ein Sonderzeichen schreiben dann klappts nicht. RAM im LCD defekt? Mfg
eine pause ist auch nicht die lösung, ist dieses problem schon bekannt?
Hi In deinem Code kann ich erstmal keinen offensichtlichen Fehler entdecken. Aber, warum lädst du den CG-Ram nicht in einem Ritt. Ich habe dir mal ein Codebeispiel angehängt. MfG Spess
Danke Spess Ganz einfach, weil ich das nicht gewusst habe, dass es kürzer geht. Jetzt kommt aber die Frage auf, was für Dateien ich noch einbinden muss, damit dies funktioniert... alleine schon wegen "call wrcmd" Ein mini-lauffähiges Programm wär ne geniale Sache. In google finde ich lauter Schrott dazu. Entschuldigt bitte wenn ich lächerliche Fragen stelle. Ich will des aber können, kanns aber leider noch nicht. Mfg
Hi Ich habe dir mal die ganzen Routinen angehängt (ausnahmsweise halbwegs kommentiert). Das ganze ist für 8Bit-Mode. Die Ports sind auf mein letztes Projekt mit ATMega1281 eingestellt (die Vereinbarungen am Anfang).Sind noch ein paar Karteileichen drin, die ich gar nicht benutze. Sieh es dir erst mal an. MfG Spess
Ich danke dir, werd mich die nächsten Tage durch den Code durchwurschteln. Wenns dennoch nicht kappen würde dann kanns nur am LCD liegen... Also vielen Danke erst mal Mfg
Ich habe heute folgendes gemacht: Hab mir gedacht ich steig auf linux komplett um vom programmieren her. Dann habe ich mit avrdude und dem super Javaprogramm "AVR8 Burn-O-Mat" die Datei die nicht funktioniert hat rübergeflasht und dann hat mich das Gesicht angestrahlt ohne Fehler... mit dem selben Code wie beim "AVR Studio" daraus kann ich nur zwei Möglichkeiten schließen: -> Mein AVR-Studio ist nicht ordnungsgemäß installiert -> Eventuell kleiner Bug im AVR-Studio welches ich geladen habe (eher unwahrscheinlich da 1000de Menschen dieses Programm benutzten) ich werde jetzt noch eine andere Version von AVR-Studio ausprobieren und nochmal posten, damit dieses Thema abgeschlossen ist Mfg
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.