Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CON
- _clkmode = xtal1 + pll16x
- _xinfreq = 5_000_000
- XB_Rx = 0 ' XBee DOUT
- XB_Tx = 1 ' XBee DIN
- XB_Baud = 9600
- CR = 13 ' Carriage Return value
- GPS_Pin = 7
- OBJ
- XB : "FullDuplexSerial"
- GPS : "GPS_Float_Lite"
- FS : "FloatString"
- Pub Start | fv
- XB.start(XB_Rx, XB_Tx, 0, XB_Baud) ' Initialize comms for XBee
- GPS.Init
- repeat
- XB.Str(String(16, 1))
- FS.SetPrecision(7)
- fv := GPS.Float_Latitude_Deg ' Get latitude
- If fv <> floatNaN
- XB.Str(FS.FloatToString(fv))
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Float_Longitude_Deg ' Get longitude
- If fv <> floatNaN
- XB.Str(FS.FloatToString(fv))
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Float_Speed_Over_Ground ' Get speed
- If fv <> floatNaN
- XB.Str(FS.FloatToString(fv))
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Float_Altitude_Above_MSL ' Get altitude
- If fv <> floatNaN
- XB.Str(FS.FloatToString(fv))
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Long_Month ' Get month
- If fv <> floatNaN
- XB.Dec(GPS.Long_Month)
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Long_Day ' Get day
- If fv <> floatNaN
- XB.Dec(GPS.Long_Day)
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Long_Year ' Get year
- If fv <> floatNaN
- XB.Dec(GPS.Long_Year)
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Long_Hour ' Get Hour
- If fv <> floatNaN
- XB.Dec(GPS.Long_Hour)
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Long_Minute ' Get Minute
- If fv <> floatNaN
- XB.Dec(GPS.Long_Minute)
- Else
- XB.Str(String("---"))
- XB.Str(String(","))
- fv := GPS.Long_Second ' Get Second
- If fv <> floatNaN
- XB.Dec(GPS.Long_Second)
- Else
- XB.Str(String("---"))
- XB.tx(13)
- WaitCnt(ClkFreq / 2 + ClkFreq / 4 + Cnt)
- DAT
- floatNaN LONG $7FFF_FFFF 'Means Not a Number
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement