Hi,
I'm struggling to sprintf a float value with redlib(semihost-nf). What i've done:
- set PRINTF_FLOAT_ENABLE=1
- set SCANF_FLOAT_ENABLE=1
- removed CR_INTEGER_PRINTF
Example code:
char text_buffer[64]
snprintf(text_buffer, sizeof(text_buffer), "declination: %.2f\r\n" , 5.25);
Any ideas what else might be wrong?
It's working on newlib(semihost) but semihosting on that lib is just too slow and i would rather to stay on redlib.
I had the same problem and i solved it after correcting the preprocess symbol:
CR_INTEGER_PRINTF to _CR_INTEGER_PRINTF.
(was missing the preceding underscore)
That's what i got in the settings. The weirdest part is that i created new project and it's working just fine there, but i cannot get it to work on my project so i just generated whole new project and copied files there and problem solved!. Still have no clue why didn't it work on my last project tho.
could it be that you changed something in the linker settings? I would compare those.
choose a different redlib library. nf means 'no-float'.
correction: nf means no-files (not no-float)