String an Dispaly schicken
-
Hallo
Ich habe hier eine Anweisung, die ich nicht verstehe.
Und zwar kann das String max. 20 Zeichen sein (1 Zeile), aber warum wird hier in der ersten if *msg == '%' verglichen und dem pointer mit 1 inkrementiert und dessen wert cc übergeben?verstehe ich nicht und was soll das mit den Zeichen 0 und 7
void schreibelcd(const char *msg) { char cc; while ( *msg != '\0' ) { if ( *msg == '%' ) { // Custom Char Support cc = *(msg+1); // extract the custom character number if ( (cc >= '0') && (cc <= '7')) { // chech if custom character number is within the range lcdData(cc - '0'); // send custom character msg++; } else { lcdData('%'); } } else { lcdData(*msg); } msg++; } }
-
Geraten:
Das Display unterstützt 8 Benutzerdefinierte Zeichen Code (0 - 7).
Diese kannst du mit der Funktion mit %0 bis %7 ausgeben lassen.
Dabei soll aber nicht das %-Zeichen mit ausgegeben werden.Wenn hinter dem % Zeichen keine Ziffer von 0 - 7 kommt, dann wird das %-Zeichen ausgegeben.
Gemeint ist das wohl ähnlich wie bei
printf
-
Hallo Dirk
Vielen Dank