Datenübertragung per SPI

Gast #5848062
Lesenswert?

Hallo zusammen,

ich möchte Daten von einem STM32 µC an den anderen per SPI übertragen. 
Nun kann ich leider nur uint_8 übertragen. Für float vlaue z.B. 43.54 
mache das Folgendes: 43.54 *100 =4354 und diesen Wert im 2.µC maskieren 
4354 & 0x00FF und 4354 & 0xFF00 und dann 8 bits shiften. Nun zu meiner 
Frage, wie kann ich -43.54 übertragen also negative value?

beste Grüße
Gast #5848084
Lesenswert?

Franz schrieb:
> Für float vlaue z.B. 43.54
> mache das Folgendes: 43.54 *100 =4354 und diesen Wert im 2.µC maskieren
> 4354 & 0x00FF und 4354 & 0xFF00 und dann 8 bits shiften.

Was du da beschreibst, ist nicht Float, sondern Festkomma. Bei Float 
hättest du noch einen Exponenten.
Gast #5848107
Lesenswert?

Die Darstellung in beiden Maschinen (Source/Sink) hat mit der 
Übertragung nicht viel gemeinsam.

Was man aux X Bytes macht ist das eine, wie man sie transportiert ist 
etwas anderes.

Und jede reale Zahl (float, double, .. ) wird intern in mehreren bytes 
abgelegt.

siehe z.B. hier
https://de.wikipedia.org/wiki/IEEE_754


Kann der SPI doch egal sein wie man 4, 8 oder X bytes deutet.

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