TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: ituarte en 26 de Abril de 2012, 13:01:35
-
Hola, tengo una variable llamada tempValue del tipo u16 que recoge los datos del ADC y me los muestra en el LCD pero me gustaria que me sacara por la pantalla uno o dos decimales, como puedo hacer??? el codigo es el siguiente:
while(1)
{
ADC1_StartConversion();
while(!(ADC1->CSR & 0x80 ));
temper=ADC1_GetConversionValue();
tempValue=((temper*300)/614)-59.97;
LCD_CLEAR_DISPLAY();
LCD_printstring("Temperature\n");
LCD_2ndROW();
LCD_printf("%u\n",tempValue);
Delay (1500);
}
-
Un entero no tiene decimales, tenes que usar un float (y en el printf %f)
-
He intentado, pero entonces me deja de funcionar, en el LCD se muestra "Temperature" pero no se ve los grados
-
El compilador soporta %f ? Sino vas a tener que buscar alguna función que cree en string a partir del flotante. En el foro hay utiliza el buscador
-
Gracias buscare ;)