AYUDA con pantalla nokia 6100 LCD

Buenas tardes,

me he comprado una pantalla LCD de Nokia 6100 para mi arduino y la verdad que funciona sin problemas. La único es que no se cómo mostrar un valor leido desde una de las entradas analógicas. Quiero leer un valor de temperatura con una de las entradas analogicas y ese valor mostrarlo en el display. Puedo escribir cadenas de caracteres sin problema pero cuando intento escribir el valor de una variable o no sale nada, o me dice que no se puede convertir de float a char.

estoy usando la libreria de ColourLCD. Alguien me puede ayudar?

Gracias!

Saludos

Para convertir un valor numerico a una cadena de caracteres usa:
dtostrf(valor, 10, 2, cadena);

donde valor = valor numerico,
10 es la cantidad de partes entera, modificable
2 es la cantidad de decimales, modificable
y cadena un arreglo de caracteres que debes declarar como cadena[x], donde x debe ser suficiente para contener 10 + 1 + 2, es decir los 10 de los enteros,2 de los decimales y 1 del punto decimal.

Gracias por tu respuesta. Estoy intentando implementar esa instrucción que me mandaste en mi código pero realmente no se como hacerlo. He cogido un código de un foro que se supone que funcionaba pero a mi no me funciona, no se si me puedes ayudar. El código es:

//Programma di test display 6100

#include <ColorLCDShield.h>

LCDShield lcd;
int potPin = 0;
char test[20] = "";
float temperature = 0;
long val=0;

void setup()
{
lcd.init(PHILLIPS); //Driver display
lcd.contrast(40); // contrasto
lcd.clear(WHITE); // reset schermo
lcd.setStr("TEMPERATURA", 2, 20, SLATE, WHITE);
lcd.setStr("MISURATA", 20, 30, SLATE, WHITE);
Serial.begin(9600);
}

void loop()
{
val = analogRead(potPin); //Leggo la temperatura da analogica
temperature = (5val100/1024); //converto la tensione in temperatura
printf(test, "%f", temperature);
Serial.println (temperature); //scrivo su seriale
lcd.setStr(test, 40, 40, SLATE, RED); // scrivo su display Nokia 6600
}

void loop()
{
val = analogRead(potPin); //Leggo la temperatura da analogica
temperature = (5val100/1024); //converto la tensione in temperatura
Serial.println (buffer); //scrivo su seriale
lcd.setStr(buffer, 50, 20, SLATE, RED); // scrivo su display Nokia 6600
int temp1 = (int)temperature; //trova la parte intera
int temp2 = (temperature - (int)temperature) * 100; //trova la parte decimale
sprintf(buffer,"Gradi: %d.%d", temp1, temp2);
}

Gracias.

He sido capaz de mostrar en la pantalla un valor proveniente de un analogRead aplicando 5 voltios al arduino en uno de los pines analógicos pero mi intención ahora es poder mostrar una temperatura que proviene de otro arduino por medio del nfr24l01. Al guien sabe como hacer funcionar este colorLCD shield con el nfr24l01 al mismo tiempo? parece que al compartir pines no pueden funcionar juntos o al menos yo no soy capaz de hacerlo. Gracias!

Saludos
El NRF24L01 trabaja el ISP y los pines de control son seleccionable si tu pantalla trabaja en los mismos pines solo debes cambiar CE y CNE del NRF24l01

He cambiado esos dos pines a pines que estaban libres pero aún no me funcionaba, me salia en la pantalla números arbitrarios. Esta tarde voy a probar de nuevo y veré si consigo solucionarlo.

Gracias por tu respuesta

PD: aparte de CE y CNE hay otros pines que coinciden tanto en el LCD y nfr24l01. He leido que los pines de "bus" que creo que son no deberían influir en un mal funcionamiento pero esos no se pueden cambiar por programa.

Saludos
Esos pines no hay problema que esten juntos.

Lee este post, aqui coloco una libreria modificada para el Nrf24L01 prueba con esa libreria
http://forum.arduino.cc/index.php?topic=266021.msg1878040#msg1878040

Gracias, lo probaré cuando llegue a casa.

Saludos!