www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Umlaute mit dem EA-DOGM Display


Autor: Luca Bertoncello (lucabert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, Leute!

Heute wollte ich ein Text mit Umlauten mit dem EA-DOGM darstellen.
Leider anstatt den "ä" wird ein komisches Zeichen gezeigt.

Aber laut der "Character Set" in dem Datenblatt des Displays, sollten 
die Umlaute doch dabei sein.

Hat jemand auch das gleiche Problem gehabt? Und vielleicht auch die 
Lösung? :D

Danke
Luca Bertoncello

Autor: Michael H. (michael_h45)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du musst deinem Compiler oder deiner IDE beibringen, wie sie solche 
Sonderzeichen encodieren soll, damit es mit der Codierung auf dem 
Display-Controller übereinstimmt.
Oder vor dem Schreiben aufs Display auf Sonderzeichen überprüfen und die 
Coderung an dieser Stelle per Hand korrigieren.

Autor: Luca Bertoncello (lucabert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael H. schrieb:
> Du musst deinem Compiler oder deiner IDE beibringen, wie sie solche
> Sonderzeichen encodieren soll, damit es mit der Codierung auf dem
> Display-Controller übereinstimmt.
> Oder vor dem Schreiben aufs Display auf Sonderzeichen überprüfen und die
> Coderung an dieser Stelle per Hand korrigieren.

Die String kommt aus einer Datei auf der SD-Karte. Es sollte UTF8 
kodiert sein.
Welche Kodierung soll ich dem Display geben?

Danke
Luca Bertoncello

Autor: Hc Zimmerer (mizch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine UTF-8-Zeichenfolge erkennst Du daran, dass sie mit einem Zeichen 
beginnt, die im Bereich 0xc0..0xff liegt.  Danach folgen ein oder mehr 
Zeichen im Bereich 0x80..0xbf.  Das nächste Zeichen beginnt dort, wo 
letzterer Bereich verlassen wird.

Du musst Dir also die ersten zwei Zeichen (für deutsch genügen zwei) 
vergleichen mit einer Tabelle.  Ist es z.B. ein „ä“ (0xc3 0xa4), so 
musst Du dafür ein Byte ausgeben, das dem Platz des „ä“ im Zeichensatz 
Deines Controllers entspricht.

Autor: Luca Bertoncello (lucabert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hc Zimmerer schrieb:
> Eine UTF-8-Zeichenfolge erkennst Du daran, dass sie mit einem Zeichen
> beginnt, die im Bereich 0xc0..0xff liegt.  Danach folgen ein oder mehr
> Zeichen im Bereich 0x80..0xbf.  Das nächste Zeichen beginnt dort, wo
> letzterer Bereich verlassen wird.
>
> Du musst Dir also die ersten zwei Zeichen (für deutsch genügen zwei)
> vergleichen mit einer Tabelle.  Ist es z.B. ein „ä“ (0xc3 0xa4), so
> musst Du dafür ein Byte ausgeben, das dem Platz des „ä“ im Zeichensatz
> Deines Controllers entspricht.

OK, ich habe meine Funktionen so angepasst.
Leider habe ich kein Zeichen für den ß bei dem DOGM gefunden.
Brauche ich neue Brille oder existiert tatsächlich es nicht?

Danke
Luca Bertoncello

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
auch nicht bei 0xE2?

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Leider habe ich kein Zeichen für den ß bei dem DOGM gefunden.
>Brauche ich neue Brille oder existiert tatsächlich es nicht?

Richtig. Aber du kannst 8 eigene Zeichen verwenden.

MfG Spess

Autor: Luca Bertoncello (lucabert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus Wachtler schrieb:
> auch nicht bei 0xE2?

Nein, daß ist ein ó...

Grüße
Luca Bertoncello

Autor: Luca Bertoncello (lucabert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
spess53 schrieb:
> Hi
>
>>Leider habe ich kein Zeichen für den ß bei dem DOGM gefunden.
>>Brauche ich neue Brille oder existiert tatsächlich es nicht?
>
> Richtig. Aber du kannst 8 eigene Zeichen verwenden.

Ich fürchtete, daß ich solche eine Antwort bekomme...

Na gut! Ich werde erstmal ß mit ss übersetzen, dann mir eine richtige ß 
als Zeichen anlegen.

Besten Dank!
Luca Bertoncello

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>auch nicht bei 0xE2?

Nein. Das ist ein anderer Controller (ST7036).

MfG Spess

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Ich fürchtete, daß ich solche eine Antwort bekomme...

Was gibt es da zu fürchten? Nimm ein Blatt kariertes Papier und mal ein 
Rechteck 5 Kästchen breit und 7 Kästchen hoch. Mal ein 'ß' rein und mach 
daraus 5 Byte (Datenblatt vom ST7036 S.24) und lade die in dem CGRAM. 
Fertig.

MfG Spess

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.