Преобразование 4 необработанных байтов в 32-битную с плавающей точкой

Я пытаюсь воссоздать 32-разрядное значение с плавающей точкой из EEPROM.

4 байта в памяти EEPROM (0-4): B4 A2 91 4D

и ПК (VS Studio) корректно восстанавливает его как 3.054199 * 10 ^ 8 (значение с плавающей запятой, которое я знаю, должно быть там)

Теперь я перемещаю этот EEPROM для чтения из 8-битного Arduino, поэтому не уверен, что это вещь компилятора / платформы, но когда я пытаюсь прочитать 4 байта в 32-битном dword, а затем типизировать его на float, ценность, которую я получаю, даже не близка.

Предполагая, что преобразование не может быть выполнено автоматически с помощью стандартного компилятора ANSI-C, как можно вручную проанализировать 4 байта, чтобы получить число с плавающей запятой?

Ответы на вопрос(3)

Ваш ответ на вопрос