Plotando os dados do sendor DHT11 no display de lcd 1602 no arduino Mega 2560

Não estou conseguindo plotar os dados adquiridos no sensor DHT11 para o display.Dentre varias bibliotecas que baixei do DHT11, só a idDHT11 que deu certo,mas ela plota os dados da temperatura e humidade no monitor serial do programa do arduino.

Segue abaixo o script que funcionou:

/*
  Board              int.0      int.1      int.2      int.3      int.4      int.5
 Uno, Ethernet      2      3
 Mega2560      2      3      21      20      19      18
 Leonardo      3      2      0      1
 Due              (any pin, more info http://arduino.cc/en/Reference/AttachInterrupt)
 */

#include <idDHT11.h>

int idDHT11pin = 21; //Digital pin for comunications
int idDHT11intNumber = 2; //interrupt number (must be the one that use the previus defined pin (see table above)

//declaration
void dht11_wrapper(); // must be declared before the lib initialization

// Lib instantiate
idDHT11 DHT11(idDHT11pin,idDHT11intNumber,dht11_wrapper);

void setup()
{
  Serial.begin(9600);
  Serial.println("idDHT11 Example program");
  Serial.print("LIB version: ");
  Serial.println(IDDHT11LIB_VERSION);
  Serial.println("---------------");
}
// This wrapper is in charge of calling
// mus be defined like this for the lib work
void dht11_wrapper() {
  DHT11.isrCallback();
}
void loop()
{
  Serial.print("\nRetrieving information from sensor: ");
  Serial.print("Read sensor: ");
  //delay(100);
  DHT11.acquire();
  while (DHT11.acquiring())
    ;
  int result = DHT11.getStatus();
  switch (result)
  {
  case IDDHTLIB_OK:
    Serial.println("OK");
    break;
  case IDDHTLIB_ERROR_CHECKSUM:
    Serial.println("Error\n\r\tChecksum error");
    break;
  case IDDHTLIB_ERROR_ISR_TIMEOUT:
    Serial.println("Error\n\r\tISR Time out error");
    break;
  case IDDHTLIB_ERROR_RESPONSE_TIMEOUT:
    Serial.println("Error\n\r\tResponse time out error");
    break;
  case IDDHTLIB_ERROR_DATA_TIMEOUT:
    Serial.println("Error\n\r\tData time out error");
    break;
  case IDDHTLIB_ERROR_ACQUIRING:
    Serial.println("Error\n\r\tAcquiring");
    break;
  case IDDHTLIB_ERROR_DELTA:
    Serial.println("Error\n\r\tDelta time to small");
    break;
  case IDDHTLIB_ERROR_NOTSTARTED:
    Serial.println("Error\n\r\tNot started");
    break;
  default:
    Serial.println("Unknown error");
    break;
  }
  Serial.print("Humidity (%): ");
  Serial.println(DHT11.getHumidity(), 2);

  Serial.print("Temperature (oC): ");
  Serial.println(DHT11.getCelsius(), 2);

  Serial.print("Temperature (oF): ");
  Serial.println(DHT11.getFahrenheit(), 2);

  Serial.print("Temperature (K): ");
  Serial.println(DHT11.getKelvin(), 2);

  Serial.print("Dew Point (oC): ");
  Serial.println(DHT11.getDewPoint());

  Serial.print("Dew Point Slow (oC): ");
  Serial.println(DHT11.getDewPointSlow());

  delay(2000);
}

Ao invés de plocar de maneira serial,gostaria de plotar no display.

Segue abaixo o script que funcionou o display,mas não consigo plotar os dados do sensor no display.

#include <LiquidCrystal.h> //Carrega a biblioteca LCD
#include <idDHT11.h> //Carrega a biblioteca DHT

int idDHT11pin = 21; //Digital pin for comunications
int idDHT11intNumber = 2; //interrupt number (must be the one that use the previus defined pin (see table above)

//declaration
void dht11_wrapper(); // must be declared before the lib initialization

//Define a ligação ao pino de dados do sensor
#define DHTPIN 21

//Define o tipo de sensor DHT utilizado
#define DHTTYPE DHT11

//Define os pinos que serão ligados ao LCD
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

//Array simbolo grau
byte grau[8] ={ B00001100,
B00010010,
B00010010,
B00001100,
B00000000,
B00000000,
B00000000,
B00000000,};

void setup()
{
Serial.begin(9600); //Inicializa a serial
Serial.println(“idDHT11 Example program”);
Serial.print(“LIB version: “);
Serial.println(IDDHT11LIB_VERSION);
Serial.println(”---------------”);
lcd.begin(16,2); //Inicializa LCD
lcd.clear(); //Limpa o LCD
//Cria o caractere customizado com o simbolo do grau
lcd.createChar(0, grau);
}

void loop()
{
Serial.print("\nRetrieving information from sensor: ");
Serial.print("Read sensor: ");
//delay(100);

float getCelsius();
float getFahrenheit();
float getKelvin();
lcd.setCursor(0,0);
lcd.print("Temp : “);
lcd.print(” ");
lcd.setCursor(7,0);
lcd.print(0,1);
lcd.setCursor(12,0);

//Mostra o simbolo do grau formado pelo array
lcd.write((byte)0);

//Mostra o simbolo do grau quadrado
//lcd.print((char)223);

lcd.setCursor(0,1);
lcd.print(“Umid : “);
lcd.print(” “);
lcd.setCursor(7,1);
lcd.print(0,1);
lcd.setCursor(12,1);
lcd.print(”%”);

//Intervalo recomendado para leitura do sensor
delay(2000);
}

A duvida é: Como posso linkar o código que deu certo na aquisição dos dados do sensor e plotar com o ultimo script?

Tem que ser feita uma coisa como:

  Serial.print("Temperature (oC): ");
  Serial.println(DHT11.getCelsius(), 2);

mas no LCD em vez de na porta série. Seria qualquer coisa como:

lcd.setCursor(0,0);
lcd.print("Temp : ");
lcd.print(" ");
lcd.setCursor(7,0);
lcd.print(DHT11.getCelsius());
lcd.setCursor(12,0);
//Mostra o simbolo do grau formado pelo array
lcd.write((byte)0);