Estoy usando este metodo y al mandarlo llamar me coloca a la perfeccion el dato entero.
unsigned char buff [33];
void lcd_putint(unsigned int dat) {
sprintf(buf,"%d ",dat);
lcd_puts(buf);
}
temp=read_adc(5)*0.41;
lcd_putint(temp);
al momento de colocar tu codigo sprintf(buff,"%4.2f",variable);
solo visualizo en mi lcd 2f
debo tambien crear otro metodo para la variable float?