Serieller Monitor
Im Seriellen Monitor werden Umlaute, grafische Symbole und Sonderzeichen bei der Anweisung Serial.print() nicht immer korrekt dargestellt.
Verwende in diesem Fall stattdessen die Unicode-Zeichen:
Zeichen | Unicode |
---|---|
ä | \u00e4 |
Ä | \u00c4 |
ö | \u00f6 |
Ö | \u00d6 |
ü | \u00fc |
Ü | \u00dc |
ß | \u00df |
€ | \u20ac |
Σ | \u2211 |
© | \u00a9 |
× | \u00d7 |
Ø | \u00d8 |
α | \u03b1 |
β | \u03b2 |
γ | \u03b3 |
δ | \u03b4 |
ε | \u03b5 |
° | \u00b0 |
So sieht es aus:


void setup()
{
// Seriellen Monitor starten
Serial.begin(9600);
// auf serielle Verbindung warten
while (!Serial);
delay(1000);
// Buchstaben Sonderzeichen
Serial.println("\u00e4 \u00c4 \u00f6 \u00d6 \u00fc \u00dc \u00df");
Serial.println();
// Symbole
Serial.println("\u20ac \u2211 \u00a9 \u00d7 \u00d8 \u03b1 \u03b2 \u03b3 \u03b4 \u03b5");
}
void loop()
{
// bleibt leer, das Programm läuft nur einmal
}

Weitere 🔗Geometrische Symbole (externer Link abgerufen am 17.04.24)
LCD
Auf einem LCD müssen sogenannte Escape-Sequenzen verwendet werden:
Zeichen | Escape-Sequenz dezimal | Escape-Sequenz hexadezimal |
---|---|---|
ä | \341 | \xE1 |
ö | \357 | \xEF |
ü | \365 | \xF5 |
ß | \342 | \xE2 |
° | \337 | \xDF |
Σ | \366 | \xF6 |
Ω | \364 | \xF4 |
| | \174 | \x7C |
{ | \173 | \x7B |
} | \175 | \x7D |
→ | \176 | \x7E |
← | \177 | \x7E |
√ | \350 | \xE8 |
@ | \100 | \x40 |
# | \43 | \x23 |
• | \245 | \xA5 |
∞ | \363 | \xF3 |
π | \367 | \xF7 |
#include "LCDIC2.h"
// 4-zeiliges LCD
LCDIC2 lcd(0x27, 20, 4);
void setup()
{
// LCD starten
lcd.begin();
// Cursor "verstecken"
lcd.setCursor(false);
// Ausgabe auf dem LCD
// Cursor auf Position 0 in Zeile 0 setzen
lcd.setCursor(0, 0);
lcd.print("Sonderzeichen:");
lcd.setCursor(0, 1);
// ä ö ü ß
lcd.print("\341 \357 \365 \342");
// @ ° Σ Ω |{ } • → ← √ ∞ π
lcd.setCursor(0, 2);
lcd.print("\100 \337 \364 \173 \175 \176 \177 \350 \363 \367");
}
void loop()
{
// bleibt leer, Programm läuft nur einmal
}
TFT
Zeichen | Hex-Code | Dezimal-Code |
---|---|---|
ä | 0×84 | 132 |
ö | 0×94 | 148 |
ü | 0×81 | 129 |
Ä | 0x8e | 142 |
Ö | 0×99 | 153 |
Ü | 0x9a | 154 |
ß | 0xe0 | 224 |
° | 0xf7 | 247 |
α | 0xdf | 223 |
π | 0xe2 | 226 |
Ω | 0xe9 | 233 |
Σ | 0xe3 | 227 |
€ | 0xed | 237 |
| | 0xad | 173 |
// Beispiele
// Großstädte
tft.println();
tft.print("Gro");
tft.write(0xe);
tft.print("st");
tft.write(0x84);
tft.print("dte");
// Düsseldorf
tft.println();
tft.print("D");
tft.write(0x81);
tft.print("sseldorf");
// Köln
tft.println();
tft.print("K");
tft.write(0x94);
tft.print("ln");;
OLED
Zeichen | Hex-Code | Dezimal-Code |
---|---|---|
ä | \x84 | 132 |
ö | \x94 | 148 |
ü | \x81 | 129 |
Ä | \x8e | 142 |
Ö | \x99 | 153 |
Ü | \x9a | 154 |
ß | \xe1 | 224 |
° | \xf8 | 248 |
α | \xe0 | 223 |
π | \xe3 | 227 |
Ω | \xea | 234 |
Σ | \xee | 238 |
€ | \xee | 237 |
| | \x7c | 124 |
{ | \x7b | 123 |
} | \x7d | 125 |
# include <Adafruit_GFX.h>
# include <Adafruit_SSD1306.h>
# define BildschirmBreite 128
# define BildschirmHoehe 64
# define OLED_RESET 4
// Adresse: 0x3C oder 0x3D
# define Adresse 0x3c
// Name des Displays und Startparameter
Adafruit_SSD1306 oled(BildschirmBreite, BildschirmHoehe, &Wire, OLED_RESET);
void setup()
{
// OLED starten
oled.begin(SSD1306_SWITCHCAPVCC, Adresse);
// Bildschirm löschen
oled.clearDisplay();
// Schriftfarbe und -größe
oled.setTextColor(WHITE);
// Textgröße (1-3)
oled.setTextSize(2);
// Codepage auf 437 setzen -> Sonderzeichen anzeigen
oled.cp437(true);
// Display dunkler stellen
oled.dim(true);
}
void loop()
{
oled.clearDisplay();
oled.setCursor(0, 0);
oled.write("\x84"); // ä -> 132
oled.write("\x94"); // ö -> 148
oled.write("\x81"); // ü -> 129
oled.write("\x8e"); // Ä -> 142
oled.write("\x99"); // Ö -> 153
oled.write("\x9a"); // Ü -> 154
oled.write("\xe1"); // ß -> 224
oled.write("\xe0"); // alpha -> 223
oled.write("\xe4"); // Summenzeichen -> 228
oled.write("\xe3"); // PI -> 227
oled.write("\xea"); // Ohm -> 234
oled.write("\xed"); // Durchschnitt -> 237
oled.write("\xee"); // € -> 238
oled.write("\x10"); // Pfeil links -> 16
oled.write("\x11"); // Pfeil rechts -> 17
oled.write("\x12"); // Pfeil oben und unten -> 18
oled.write("\x7b"); // { -> 123
oled.write("\x7c"); // | -> 124
oled.write("\x7d"); // } -> 125
oled.write("\xf8"); // ° -> 248
oled.display();
}

Letzte Aktualisierung: