View difference between Paste ID: Gh43qYcy and rB3iHwDK
SHOW: | | - or go back to the newest paste.
1
CON 
2
  _clkmode = xtal1 + pll16x 
3
  _xinfreq = 5_000_000 
4
  
5
  XB_Rx     = 0    ' XBee DOUT 
6
  XB_Tx     = 1    ' XBee DIN 
7
  XB_Baud   = 9600 
8
  CR        = 13   ' Carriage Return value       
9
  GPS_Pin  = 7                                                                        
10
OBJ 
11
   XB             : "FullDuplexSerial"
12
   GPS            : "GPS_Float_Lite"
13
   FS             : "FloatString" 
14
Pub  Start | fv
15
XB.start(XB_Rx, XB_Tx, 0, XB_Baud) ' Initialize comms for XBee 
16
GPS.Init
17
18
 repeat
19
    XB.Str(String(16, 1))
20
   
21
    FS.SetPrecision(7)
22
    fv := GPS.Float_Latitude_Deg             ' Get latitude
23
    If fv <> floatNaN
24
      XB.Str(FS.FloatToString(fv))   
25
    Else
26
      XB.Str(String("---"))  
27
            
28
    XB.Str(String(","))
29
    fv := GPS.Float_Longitude_Deg            ' Get longitude
30
    If fv <> floatNaN
31
      XB.Str(FS.FloatToString(fv))   
32
    Else
33
      XB.Str(String("---"))
34
35
    XB.Str(String(","))
36
    fv := GPS.Float_Speed_Over_Ground            ' Get speed
37
    If fv <> floatNaN
38
      XB.Str(FS.FloatToString(fv))   
39
    Else
40
      XB.Str(String("---"))
41
42
    XB.Str(String(","))
43
    fv := GPS.Float_Altitude_Above_MSL            ' Get altitude
44
    If fv <> floatNaN
45
      XB.Str(FS.FloatToString(fv))   
46
    Else
47
      XB.Str(String("---"))
48
49
    XB.Str(String(","))
50-
    fv := GPS.Float_Mag_Var_Deg             ' Get magnetic variance
50+
51
    If fv <> floatNaN
52
      XB.Dec(GPS.Long_Month)   
53
    Else
54
      XB.Str(String("---"))
55
56
    XB.Str(String(","))
57
    fv := GPS.Long_Day            ' Get day
58
    If fv <> floatNaN
59
      XB.Dec(GPS.Long_Day)    
60
    Else
61
      XB.Str(String("---"))
62
63
    XB.Str(String(","))
64
    fv := GPS.Long_Year            ' Get year
65
    If fv <> floatNaN
66
      XB.Dec(GPS.Long_Year)    
67
    Else
68
      XB.Str(String("---"))
69
70
    XB.Str(String(","))
71
    fv := GPS.Long_Hour            ' Get Hour
72
    If fv <> floatNaN
73
      XB.Dec(GPS.Long_Hour)  
74
    Else
75
      XB.Str(String("---"))
76
77
    XB.Str(String(","))
78
    fv := GPS.Long_Minute            ' Get Minute
79
    If fv <> floatNaN
80
      XB.Dec(GPS.Long_Minute) 
81
    Else
82
      XB.Str(String("---"))
83
84
    XB.Str(String(","))
85
    fv := GPS.Long_Second            ' Get Second
86
    If fv <> floatNaN
87
      XB.Dec(GPS.Long_Second)
88
    Else
89
      XB.Str(String("---"))
90
    XB.tx(13)
91
    WaitCnt(ClkFreq / 2 + ClkFreq / 4 + Cnt)     
92
93
DAT
94
95
  floatNaN       LONG $7FFF_FFFF              'Means Not a Number