我想在 LCD 上显示浮点值。我使用 avr5.1 编译器并使用函数 snprintf 将浮点值转换为 ASCII。但它给出了 Proteus 的输出“?”。
这是我正在使用的代码;我还包括了 printf_flt 库:
temp1=ADCH;
// FOR MEASURING VOLTAGE
temp=(temp1*19.53)*2.51;
LCD_goto(1,1);
snprintf(buffer,6, "%2.2f", temp);
lcd_data1(buffer);
lcd_data1("mV");
percent=(temp-11500);
LCD_goto(2,2);
snprintf(buffer1,4, "%2.2f", percent);
lcd_data1(" ");
lcd_data1(buffer1);
lcd_data1("%");
这是输出的图片: