Liebe Kollegen! Ich habe eine super Aufgabe ausgefasst und habe überhaupt keine Ahnung wie ich das lösen kann. Ich soll einen µC(MSP430) an den PC hängen (via RS232) und dort im Hyper Terminal Befehle eingeben. Die Befehle sind immer gleich 3 Zeichen was 3 Zeichen wo 3 Zeichen Wert immer mit Abstand dazwischen. Die RS232 funktioniert und ich kann auch Zeichen einlesen. Leider weis ich nicht wie ich das mit den Befehlen machen kann. Switch funktioniert ja nicht mit Strings. Kann mir jemand helfen? Eine Idee wäre schon super!!! Bussi Sandy
Sandy schrieb: > Liebe Kollegen! > > Ich habe eine super Aufgabe ausgefasst und habe überhaupt keine Ahnung > wie ich das lösen kann. > > Ich soll einen µC(MSP430) an den PC hängen (via RS232) und dort im Hyper > Terminal Befehle eingeben. > > Die Befehle sind immer gleich > 3 Zeichen was > 3 Zeichen wo > 3 Zeichen Wert > immer mit Abstand dazwischen. Du hast was vergessen: Nämlich "und hinten nach noch ein Return" Dieses Return ist wichtig. Denn es ist das Signal für den µC: jetzt ist eine Eingabezeile fertig, und du kannst anfangen den String auseinander zu nehmen, auf Fehler zu überprüfen und das Kommando auszuführen. > Die RS232 funktioniert und ich kann auch Zeichen einlesen. Leider weis > ich nicht wie ich das mit den Befehlen machen kann. Switch funktioniert > ja nicht mit Strings. Was gefällt dir an if( !strcmp( Command, "SET" ) ) ... else if( !strcmp( Command, "GET" ) ) ... nicht? > Kann mir jemand helfen? Eine Idee wäre schon super!!! * Solange Zeichen empfangen und in einem String sammeln, bis der \n daher kommt. * Dann den String an den Leerzeichen in die 3 Teile aufsplitten. * Anhand des ersten Teils (Commando) in die entpsrpechenden Funktionen verzweigen, die die restlichen Teile dann gemäß der Funktionalität auswerten und die Aktion ausführen.
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.