char str[128];
char gprmc[] = "$GPRMC,";
char tokens[] = ",";
int i;
char *p
, *lat
, *latDir
, *lon
, *lonDir
, *time,*validity
,*speed
,*course
,*date
,*variation
,*east
,*checksum
; // !$GPRMC,045103.000,A,3014.1984,N,09749.2872,W,0.67,161.46,030913,,,A*7C
i = 0;
while(p != NULL){
switch(i++){
// !$GPRMC,045103.000,A,3014.1984,N,09749.2872,W,0.67,161.46,030913,,,A*7C
case 1: time = p
; break; // 1 220516 Time Stamp case 2: validity=p; break; // 2 A validity - A-ok, V-invalid
case 3: lat = p; break; // 3 5133.82 current Latitude
case 4: latDir = p; break; // 4 N North/South
case 5: lon = p; break; // 5 00042.24 current Longitude
case 6: lonDir = p; break; // 6 W East/West
case 7: speed = p; break; // 7 173.8 Speed in knots
case 8: course = p; break; // 8 231.8 True course
case 9: date = p; break; // 9 130694 Date Stamp
case 10: variation = p; break; // 10 004.2 Variation
case 11: east = p; break; // 11 W East/West
case 12: checksum = p; break; // 12 *70 checksum
default: break;
}
}