APena7
New Contributor
6 years agoHow to convert float to string for UART transmission
I'm trying to send a floating point number (it's the ratio of two measurements the device makes) via UART to a terminal program (Termite). However, I understand that the printf function for nios ii does not support transmission of floats. Is there a convenient way to send this floating number? I have tried converting to a string using ftoa, gcvt and sprintf, but none of these solutions compile/work.
As an example, here are a few methods I've tried (though in the real code, only one method is uncommented):
sprintf(BER_s,"%4.2f" ,BER);
ftoa(BER,BER_s,3);
gcvt(BER,3,BER_s);
printf("BER: %s \n", BER_s);Where BER is the float I wish to print, and BER_s is a char array - char BER_s [20];
Thanks in advance for your suggestions.