werte ich meine 4 bytes mit http://www.h-schmidt.net/FloatConverter/IEEE754.html
in meiner Reihenfolge aus:
Bytes: 5, 6, 3, 4
66, 19, 78, 99
Hex 42, 13, 48, 63
Ergibt sich: 36.82069
Ich verstehe einfach nicht wo bei mir der Denkfehler ist....
Ja das is mir auch gerade aufgefallen, hatte mich vertippt!
Es soll 5,6,3,4 sein!
Liegt daran das die Reihenfolge vom ModBUs an der Geräteschnittstelle vertauscht wird.
Hallo
Ich habe folgendes Problem:
Ich erhalte folgende Daten von einer Schnittstelle:
byte[] IstTemp = { 8, 3, 4, 78, 99, 66, 19, 245, 104 }
Von hier sollen die vier byte IstTemp[3], IstTemp[4], IstTemp[5], IstTemp[6],
in eine float umgewandelt werden, gemäß IEEE754
Dazu bringe ich die Betreffenden bytes in die richtige Reihenfolge gemäß IEEE 754:
byte[] temp = { IstTemp[6], IstTemp[5], IstTemp[3], IstTemp[4] };
und dieses Array will ich dann in eine float umwandeln:
float temperatur = BitConverter.ToSingle(temp,0);
Werte ich obiges entsprechend aus erhalte ich als Ergebnis 56.98....;
Jedoch sollte ich eigentlich 36.8 erhalten!
Kann mir jemand sagen was ich falsch mache ?
Grüße und Dank!