PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie kommuniziert man "richtig" über RS232 mit C?



Mad-Onion
26.11.2006, 16:40
Hallo liebes Forum,

ich habe heute mal die UART-Lib von Peter Fleury getestet, es funktioniert soweit auch alles.

Nur was ich mich jetzt frage: Wie kommuniziere ich damit sinnvoll mit dem PC?

So würde ich gerne vom PC einen String senden, der mehrere Informationen in mehreren Formaten enthält (Hex und Float), beispielsweise so:
"0xFF 0x2A 34.5"

Der AVR soll dann diesen String zerlegen, sodass er den ersten HEX-Wert in eine Variable schreibt (als HEX-Wert, nicht als String), den zweiten HEX-Wert in eine andere Variable und den Float in eine dritte.

Die Größe der einzelnen Werte ist fest vorgegeben, zb die Länge des Float. Nur wie setze ich sowas jetzt in C um? Über die Forensuche habe ich leider noch nichts gefunden. Oder ist mein Denkansatz komplett falsch?



Gruß
Tobias

Edit: Das Ganze läuft auf einem ATMEGA 32

PicNick
26.11.2006, 16:51
Für einen µC ist diese "parsing" halt recht mühsam, braucht platz und zeit. Da tut sich der PC leichter, das vorher dem µC "mundgerecht" aufzubereiten.
Im Prinzip steppt man von einem Space zum nächsten, und versucht, aus den Zeichen dazwischen rauszukriegen, was es denn sein soll ("0X" --> hex, numerisch mit dez.Punkt..--> Float, etc. )