Mostrar Pos en display con MEGA 2560

Muy buenas, pues eso, estoy intentando que me muestre la pos (lat. long etc...) de un gps shield en una pantalla. El display me funciona y la gps shield manda datos por el monitor serie.

Pero al parecer con la placa MEGA2560 no es necesario usar la libreria softserial (no se si es correcto o no), el caso es que no se como recoger los datos que manda el gps, el codigo que tengo es el siguiente:

//Libreria GPS
#include 
extern uint8_t BigFont[];
extern uint8_t SmallFont[];
extern uint8_t SevenSegNumFont[];
#include 
//Objeto GPS
TinyGPSPlus gps;
UTFT myGLCD(HX8357B,38,39,40,41);


void setup() {
myGLCD.InitLCD();
myGLCD.InitLCD();
myGLCD.setFont(BigFont);


}
void loop() {

myGLCD.print("POS", LEFT,50);


}

Como digo, la pantalla si me muestra el POS y el monitor serie escribe los datos de la gps shield, la tengo conectada a 5v y el TX de la shield al TX0 del MEGA.

Muchas gracias por la ayuda.

Intentando seguir las instrucciones de la libreria TinyGPS++ he llegado al siguiente codigo:

#include 
#include 
#include 
extern uint8_t BigFont[];
extern uint8_t SmallFont[];
extern uint8_t SevenSegNumFont[];
#include 
UTFT myGLCD(HX8357B,38,39,40,41);


static const int RXPin = 0, TXPin = 1;
static const uint32_t GPSBaud = 9600;

// The TinyGPS++ object
TinyGPSPlus gps;

// The serial connection to the GPS device
SoftwareSerial ss(RXPin, TXPin);

void setup()
{
 Serial.begin(9600);
 Serial1.begin(9600);
 ss.begin(GPSBaud);

myGLCD.InitLCD();
myGLCD.InitLCD();
myGLCD.setFont(BigFont);
}

void loop()
{
 if (Serial1.available()) {
 int inByte = Serial1.read();
 Serial.write(inByte);

 // This sketch displays information every time a new sentence is correctly encoded.
 while (ss.available() > 0)
   if (gps.encode(ss.read()))

 Serial.print(gps.location.lat());
 myGLCD.printNumF(gps.location.lat(), 6, CENTER, 40);
 myGLCD.printNumF(gps.location.lng(), 6, CENTER, 60);
 }
}

En pantalla me muestra:

0.00000 0.00000

aun cuando el gps ya ha cogido posición, en pantalla no se modifica.

Espero vuestra ayuda, un saludo.

el MEGA tiene 4 puertos serie. El comun se usa como ya sabes Serial, los siguientes se llaman Serial1, Serial2, Serial3. Estan debidamente indicados en la placa. Me llama la atención que no lo hayas visto.

No uses SoftwareSerial cuando tienes 3 puertos disponibles ademas del que usas para subir y monitorear tu sketch. Vas a Google: pones Ardino Mega elijes imágenes y podras ver donde esta cada pin.