VARIÁVEL FLOAT

Amigos, no código abaixo, eu estou tendo problemas em mostrar uma tensão variando de 0 a 5V num display lcd porque quando o valor cai abaixo de 1V (por exemplo: 0,45V), o display mostra 4,5. Isto acontece porque a variável "volt" que é do tipo float apresenta o número em notação científica e faz (4,5x10^-1 = 0,45) entendem.
E não adianta tentar dividir o valor por 10, fazendo 0,045 porque então a variável faz o valor ser 4,5x10^-2 e o display continua mostrando 4,5 do mesmo jeito. Aliás, o problema ocorre para todos os valores numéricos entre 0 e 1. Entre 1e 5V não há erros.
Segue o fragmento do código para vocês verem e os comentários:
Exemplo: Ao ler o valor 0,233 na variável float "volt", o valor é convertido para notação científica em 2,33e-001 e o display mostra 2.33 após a conversão do tipo float para string.
O compilador é o MikroC.
Aguardo uma ajuda.
E não adianta tentar dividir o valor por 10, fazendo 0,045 porque então a variável faz o valor ser 4,5x10^-2 e o display continua mostrando 4,5 do mesmo jeito. Aliás, o problema ocorre para todos os valores numéricos entre 0 e 1. Entre 1e 5V não há erros.
Segue o fragmento do código para vocês verem e os comentários:
- Código: Selecionar todos
volt=media*5/1023; / / variável float volt recebe o resultado da conversão da variável média
floattostr(volt,result); / / é feita a conversão de float para string, para apresentação no display lcd
lcd_out(1,1,"VOLTAGEM="); / /imprime a palavra "voltagem" na primeira linha e primeira coluna do display
lcd_out(1,10,result); / /apresenta a string "result" à frente com o valor incorreto entre 0 e 1V.
delay_ms(500); / / aguarda 0,5s e repete a leitura do CAD.
Exemplo: Ao ler o valor 0,233 na variável float "volt", o valor é convertido para notação científica em 2,33e-001 e o display mostra 2.33 após a conversão do tipo float para string.
O compilador é o MikroC.
Aguardo uma ajuda.