Befehle anhand einer Tabelle auswerten

OP #2941235
Lesenswert?

Hallo zusammen

Hat jemand ein C-Code Beispiel zur Hand, mitdem man Befele, die über CAN 
oder UART eingelesen werden anhand einer Tabelle verarbeiten kann?
Vieleicht ist es besser wenn ich ein Beispiel dazu gebe:

Befehle (von extern an Prozessor gesendet) über UART:

intensity=55\n
speed=200\n
...

Jetzt möchte ich gerne die Codewörter intensity und speed in einer 
Tabelle abspeichern und somit einfacher neue Befehle hinzufügen und 
verarbeiten.
Dasgleiche müsste ich für den Antwortstring einsetzen können, der 
aktuell den Empfangsbefehl genau gleich wie er reinkommt auch wieder 
zurückgibt, aber anhand einer Tabelle könnte ich dies natürlich einfach 
ändern. Ich möchte dadurch verhindern, dass ich defines für einen String 
mit intensity und speed machen muss und danach mit string compare 
vergleichen muss.

Ich habe schon gesucht aber weiss nicht genau nach welchen 
Schlüsselwörter ich suchen soll.

Danke für die Antworten
Persönliche Seite #2941727
Lesenswert?

@dominik

Evtl, könnte mein Parser

Beitrag "uParse - die zweite."

dir helfen. Der macht dir aus Klartext-Vorgaben z.b. "initialize = \x01" 
bei einer Eingabe von "initialize=34" einen Funktions-Aufruf, indem er 
dir sagt das er diesen Befehl (es können mehrere sein, es wird ein Index 
mitgeliefert) gefunden hat, und liefert dir noch den Parameter (hier 34) 
in binär mit. Funktioniert mit bis zu 4 Parametern (Zahl, String, oder 
eigens definiertes) und die Befehle lassen sich einfach hinzufügen (da 
gibt es eine Config-Datei).
Verwende ich um eben solche Klartext-Eingaben "mundgerecht" serviert zu 
bekommen und entweder die mitgelieferten Daten wegzuschreiben, was 
anzutriggern oder zum Entwickeln und Testen von Funktionen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren