void SomeFunct(...)
{
uint32_t intVal;
float floatVal;
/* some code that sets intVal (to 32 for example) */
floatVal = intVal;
}
When I run this code the floatVal does not = 32.0 but rather 4.484155e-44 (0x00000020 when decoded as a floating point number).
The dis-assembly for this c code is:
1089 floatRpm = rpm;
$C$L137:
00003a42: 9800 LDR R0, [SP]
00003a44: EE000A10 FMSR S0, R0
00003a48: EEB80A40 FUITOS S0, S0
What do I need to do to get the expected floating point val? Here's the basic info about the compiler setup.

