So etwa haltCode:char readChar(void); char Instring[MAX_CHAR]; char InIdx = 0; SIGNAL(SIG_USART_RECV) { Instring[InIdx] = readChar(); switch (Instring[InIdx]) { case ENTER: // ev. signalisieren an "Main()" Instring[InIdx] = 0; // korr. Stringterminator to \0 break; case START: // Startzeichen ?? InIdx = 0; break; default: InIdx++; break; } if (InIdx > MAX_CHAR) { overflow, was machen wir ? } }
Nicht berücksichtigt sind falsche Zeichen, CAN od. Delete usw. und ECHO, wenn es eine Tastatureingabe ist
Die Auswertung ist Case-Sensitiv, muß man aufpassen
Lesezeichen