Hallo, ich habe seit gestern die GLCD-Lib von Fabian Max. T. am Laufen und bin davon begeistert! Das Einbinden in das AVR-Programm ging problemlos und habe schon ein wenig mit den Grafik-Funktionen herumgespielt, da ein GLCD Neuland für mich ist. Aber heute bin ich auf ein Problem gestoßen, das ich noch zu bewältigen habe: Es ist mir nicht gelungen Umlaute auf dem GLCD darzustellen. Muss ich nun ein kleines a mit zwei Punkten, das ein ä sein soll, von Hand zeichnen? Nur wie binde ich das nun ein? ks0108Puts_P(PSTR("Gerät")); will nicht funktionieren, jedenfalls wird das ä nicht dargestellt. Und wenn ich schon mal dabei bin: Wie funktioniert das mit Sonderzeichen? Z.B. wenn ich bei 0x80 das Zeichen "<->" erstelle, wie spreche ich dieses Zeichen an, damit es dargestellt wird? MfG, Henry
Sind die Umlaute in deinem Font enthalten? Ich glaubs fast nicht ... einfach deinen Font bisschen erweitern.
..,- schrieb: > Sind die Umlaute in deinem Font enthalten? Autsch! Natürlich nicht! Ein kleines ä ist 0xE4, der mitgelieferte Schriftsatz geht nur bis 0x7F. Daran könnte es liegen! ;) Erweitertes ASCII... Und der Befehl ks0108Puts_P(PSTR("Gerät")); wird dann im AVR-Studio 4 mit der letzten WinAVR-Version funktionieren und auch ein ä darstellen? Werde es heute Nachmittag mal ausprobieren und berichten. Schon mal besten Dank! Henry
Hallo, ich habe mit dem FontCreator2 einen neuen Schriftsatz erstellt, der mir alle ASCII-Zeichen ausgibt. Habe zu den Standart-Zeichen nur die Umlaute hinzugefügt und versucht mit ks0108Puts_P(PSTR("Gerät")); den Text ausgeben zu lassen. Ohne Erfolg. Mit einem anderen Schriftsatz habe ich es auch erfolglos probiert. Entweder wird das ä überhaupt nicht ausgegeben oder es wird als kryptische Zeichen angezeigt. Die restlichen Buchstaben funktionieren 1a! Was mache ich falsch? MfG, Henry
Henry Daus schrieb: > Habe zu den Standart-Zeichen nur die Umlaute hinzugefügt und versucht > mit ks0108Puts_P(PSTR("Gerät")); den Text ausgeben zu lassen. > Ohne Erfolg. Sieh den Code durch, ob irgendwo beim Auslesen des nächsten Zeichens aus dem String das oberste Bit wegmaskiert wird. ASCII in seiner Urform ist nur 7 Bit. > Entweder wird das ä überhaupt nicht ausgegeben oder es wird als > kryptische Zeichen angezeigt. Was jetzt? kyrillisch oder gar nicht. Gar nicht könnte ein 7Bit Problem sein. Kyrillisch könnte ein Problem sein, dass deine Fontdefinition des ä nicht am ASCII Code sitzt, an der der Fontgenerator das Zeichen generiert hat. Hast du dir schon mal den ASCII Code des ä ausgeben lassen und kontrolliert ob das mit dem übereinstimmt, was der Fontgenerator annimmt? Immer drann denken: Was oberhalb 7Bit ASCII ein bestimmtes Zeichen für einen Code-Wert hat ... darüber gibt es verschiedene Vorstellungen.
Karl Heinz Buchegger schrieb: > Was jetzt? kyrillisch oder gar nicht. Folgende Sätze gehören zusammen und sind als eine Einheit zu lesen: > Habe zu den Standart-Zeichen nur die Umlaute hinzugefügt und versucht > mit ks0108Puts_P(PSTR("Gerät")); den Text ausgeben zu lassen. > Ohne Erfolg. Mit einem anderen Schriftsatz habe ich es auch erfolglos > probiert. > Entweder wird das ä überhaupt nicht ausgegeben oder es wird als > kryptische Zeichen angezeigt. Tut mir leid, war wohl mein Fehler. Also, ich habe mit dem FontCreator2 Zeichen von 32 bis 255 ausgeben lassen und dann lediglich nach den 127 Zeichen NUR die sechs Umlaute angefügt. Das funktioniert anscheinend nicht, da es beim erstellten Font einen Zähler gibt. D.h. das große Ä steht nach MEINER Bearbeitung an Stelle 128, die richtige Stelle wäre aber 196. Habe mir einen Zeichensatz von 32 bis 255 mit dem FontCreator2 erstellt (nicht bearbeitet) und siehe da, es funktioniert nun auch mit den Umlauten! Ich sollte wohl noch erwähnen, dass ich (bevor ich den ersten Beitrag schrieb) aus allen "char"s "unsigned char"s gemacht habe, damit ich extended ASCII benutzen kann. Dass entweder ein kryptisches Zeichen oder gar nichts angezeigt wurde, deute ich darauf, dass "irgendwas" ausgegeben wurde, das zufällig an dieser Speicherstelle stand. Ich hab's ja mit zwei verschiedenen Schriftarten probiert. Besten Dank, Henry
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.