ei_printf_float()
void ei_printf_float(float f);
Brief: Override this function if your target cannot properly print floating points. If not overriden, this will be sent through
ei_printf()
.Blocking: Depends on user implementation
Description:
ei_printf_float()
is declared internally in the Edge Impulse SDK library, and the function must be defined by the user.Some platforms cannot handle directly printing floating point numbers (e.g. to a console or over a serial port). If your platform cannot directly print floats, provide an implementation of this function to print them as needed (for example, construct a string containing scientific notation with integers and call
ei_printf()
).If your platform can print floating point values, the easiest implementation of this function is as follows:
__attribute__((weak)) void ei_printf_float(float f) {
printf("%f", f);
}
Note the
__attribute__((weak))
symbol, which means that a user could override the implementation elsewhere in the program.Parameters:
f
- [input] Floating point number to be printed.
Example:
- This Arduino example demonstrates how to implement this function on a platform that can print floating point values.
- This STM32 example demonstrates how to implement this function on platform that cannot print floating point values.
Last modified 1yr ago