ATmega16使用sprintf函数显示不正确,怎么破?
ATmega16使用sprintf函数显示不正确,请况是这样的:#include <stdio.h>
float temperature;
char s;
void main(){
temperature=(float)(Read_Temperature());
sprintf(s,"%4.1f",temperature/100);
LCD_Print(74,2,s);
}
结果屏幕上输出为4.1f,而不是实时温度值,怎么破? 用的WinAVR GCC吗? AVRstudio + WinAVR GCC 的话,Link Lib貌似要加libm.a 和libprintf_ft.a,Linker Options要加-Wl,-u,vfprintf这些
页:
[1]