0
我試圖HEX的字符串轉換爲一個浮點值。該字符串是4個字節長。它被定義爲:Arduino的字符串浮動
String B = "";
這是一個較長的字符串的子:
B = input.substring(6,14);
這導致我試圖在轉換爲單精度浮點值的字符串中。
網上我發現下面的代碼:
float y = *(float*)&B;
這編譯沒有錯誤,但是當我運行的代碼,它總是0.000000
。我猜我不能用一個字符串使用該函數。典型的字符串可以是"bb319ba6"
,其應該是-0.002710083
。爲此,我使用的是我在網上找到的IEEE 754轉換器。
基本上,我需要做的Arduino的相同的轉換。我希望有人能幫助我。
解碼問:你爲什麼不只是擺在首位進入你的浮點值,這樣? – spectras
我看到你已經包含了IEEE-754標籤。該規範在matissa佈局,指數和所使用偏差的定義中是明確的。您需要做一些冗長的按位操作,但可以完成。遵循規範。 – TomServo
有一個帶有ADC的放大器,用於連接到Arduino的力傳感器。我得到的輸入數據是單個字節,然後我將其放入一個字符串中。 – LostInTechnology