I use a PIC 16F877 to decode. I use an array of 85 characters to collect the input data string then set about unpacking the string based on counting the commas.
GetData:
ProcessRMC:
serin2 rx232, 188, 2000, nogps,[WAIT("$GPRMC")] ' find start
for i = 0 to 84 ' plenty of length - can be cut back
serin2 rx232, 188, [a[i]]
next i
FindTrackField:
commacount = 0
' lcdout $FE, $01
for i = 0 to 84
e = a[i]
if e = "," then commacount = commacount + 1
if commacount = 8 then gettrack 'Track follows 8th comma
'10 gives MagVar - 8 gives Track
next i
HTH
Brian
Bookmarks