Hi,
I'm new the the arduino world so please bear with me. I have no idea where to start so please help me out.
I recently purchased an arduino Mega 2560 board and a GPS Receiver - LS20031 5Hz (66 Channel). However, Im unable to connect and receive data from the gps. I have tried the receiving side of the GPS to connect to either pin 2 or 3 with no success. I've played around with both wires(rx and tx) in either pin but again with no success. Any ideas? Code and error below.
Thank you
#include "SoftwareSerial.h"
int mode=-1;
char im[80];
char incoming_char = 0;
int count = 0;
SoftwareSerial gps(2,3);
float lat;
char latD;
float lng;
char lngD;
float time;
void setup(){
gps.begin(4800);
Serial.begin(9600);
char b = '0';
while(b != 36)
{
b = gps.read();
}
Serial.println('c');
char c = 'b';
while(c !='c')
{
c = Serial.read();
}
}
void loop(){
if(gps.available()>0){
incoming_char = gps.read();
if(incoming_char == 36){
if(im[0]=='G' && im[1]=='P' && im[2]=='G' && im[3]=='G' && im[4]=='A'){
char timeBuffer[10];
timeBuffer[0] = im[6];
timeBuffer[1] = im[7];
timeBuffer[2] = im[8];
timeBuffer[3] = im[9];
timeBuffer[4] = im[10];
timeBuffer[5] = im[11];
timeBuffer[6] = im[12];
timeBuffer[7] = im[13];
timeBuffer[8] = im[14];
timeBuffer[9] = im[15];
time = atof(timeBuffer);
char latBuffer[9];
latBuffer[0] = im[17];
latBuffer[1] = im[18];
latBuffer[2] = im[19];
latBuffer[3] = im[20];
latBuffer[4] = im[21];
latBuffer[5] = im[22];
latBuffer[6] = im[23];
latBuffer[7] = im[24];
latBuffer[8] = im[25];
lat = atof(latBuffer);
latD = im[27];
char lngBuffer[10];
lngBuffer[0] = im[29];
lngBuffer[1] = im[30];
lngBuffer[2] = im[31];
lngBuffer[3] = im[32];
lngBuffer[4] = im[33];
lngBuffer[5] = im[34];
lngBuffer[6] = im[35];
lngBuffer[7] = im[36];
lngBuffer[8] = im[37];
lngBuffer[9] = im[38];
lng = atof(lngBuffer);
lngD= im[40];
}
count = 0;
}else{
im[count] = incoming_char;
count++;
}
}
if(Serial.available()>0)
{
mode = Serial.read();
switch(mode)
{
case 'T':
Serial.println(time);
break;
case 'A':
Serial.println(lat);
break;
case 'a':
Serial.println(latD);
break;
case '0':
Serial.println(lng);
break;
case 'o':
Serial.println(lngD);
break;
}
}
}
error:
In file included from C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:13:
C:\Program Files\Arduino\hardware\arduino\cores\arduino\/NMEAGPS.h:62: error: expected ',' or '...' before '&' token
C:\Program Files\Arduino\hardware\arduino\cores\arduino\/NMEAGPS.h:62: error: ISO C++ forbids declaration of 'SoftwareSerial' with no type
C:\Program Files\Arduino\hardware\arduino\cores\arduino\/NMEAGPS.h:144: error: 'SoftwareSerial' does not name a type
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:27: error: expected ',' or '...' before '&' token
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:27: error: ISO C++ forbids declaration of 'SoftwareSerial' with no type
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In constructor 'NMEAGPS::NMEAGPS(int)':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:30: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:30: error: 'gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In member function 'void NMEAGPS::copyHelper(const NMEAGPS&)':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:63: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:63: error: 'const class NMEAGPS' has no member named '_gpsSerial'
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In member function 'void NMEAGPS::initialize()':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:95: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:95: error: 'SoftwareSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In member function 'bool NMEAGPS::isListening()':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:132: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In member function 'void NMEAGPS::listen()':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:136: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In member function 'int NMEAGPS::available()':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:140: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In member function 'bool NMEAGPS::overflow()':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:144: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp: In member function 'bool NMEAGPS::readGPSStream()':
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:170: error: '_gpsSerial' was not declared in this scope
C:\Program Files\Arduino\hardware\arduino\cores\arduino\NMEAGPS.cpp:173: error: '_gpsSerial' was not declared in this scope