A GPS disciplined clock

Dependencies:   net lpc1768 crypto clock web log

Revision:
35:a535b65203a9
Parent:
31:1a1d20352fca
Child:
36:2983e45eeb49
--- a/settings/settings.c	Wed Feb 06 19:57:29 2019 +0000
+++ b/settings/settings.c	Tue Feb 12 15:37:17 2019 +0000
@@ -1,6 +1,8 @@
 #include <stdlib.h>
 #include <stdbool.h>
 
+#include        "gps.h"
+#include       "nmea.h"
 #include     "clkutc.h"
 #include        "log.h"
 #include        "net.h"
@@ -62,6 +64,10 @@
     ALDOM = value & 0x001F; //5 bits +32
 }
 
+void ChgNmeaMsgTrace() { NmeaMsgTrace = !NmeaMsgTrace; }
+void ChgNmeaCmdTrace() { NmeaCmdTrace = !NmeaCmdTrace; }
+void ChgGpsTrace()     { GpsTrace     = !GpsTrace;     }
+
 static bool getBit(int bit)
 {
     return GPREG4 & (1U << bit); 
@@ -118,27 +124,27 @@
 void ChgTftpSendRequestsViaIp4() {            TftpSendRequestsViaIp4 =            !TftpSendRequestsViaIp4; }
 
 //Clock settings
-void SetClockSlewDivisor      (int  value) { ClkGovSlewDivisor       = value; }
-void SetClockSlewMaxMs        (int  value) { ClkGovSlewMaxMs         = value; }
-void SetClockPpbDivisor       (int  value) { ClkGovPpbDivisor        = value; }
-void SetClockPpbChangeMax     (int  value) { ClkGovPpbChangeMax      = value; }
-void SetClockSyncedLimitNs    (int  value) { ClkGovSyncedLimitNs     = value; }
-void SetClockSyncedLimitPpb   (int  value) { ClkGovSyncedLimitPpb    = value; }
-void SetClockSyncedHysterisNs (int  value) { ClkGovSyncedHysterisNs  = value; }
-void SetClockSyncedHysterisPpb(int  value) { ClkGovSyncedHysterisPpb = value; }
-void SetClockMaxOffsetSecs    (int  value) { ClkGovMaxOffsetSecs     = value; }
+void SetClockPpbDivisor       (int  value) { ClkGovPpbDivisor             = value; }
+void SetClockPpbChangeMax     (int  value) { ClkGovPpbChangeMax           = value; }
+void SetClockSyncedLimitPpb   (int  value) { ClkGovPpbSyncedLimit         = value; }
+void SetClockSyncedHysterisPpb(int  value) { ClkGovPpbSyncedHysteresis    = value; }
+void SetClockSlewDivisor      (int  value) { ClkGovSlewDivisor            = value; }
+void SetClockSlewMaxMs        (int  value) { ClkGovSlewChangeMaxMs        = value; }
+void SetClockSyncedLimitNs    (int  value) { ClkGovSlewSyncedLimitNs      = value; }
+void SetClockSyncedHysterisNs (int  value) { ClkGovSlewSyncedHysteresisNs = value; }
+void SetClockMaxOffsetSecs    (int  value) { ClkGovSlewOffsetMaxSecs      = value; }
 
 int SettingsInit()
 {
-    ClkGovSlewDivisor       =       10;
-    ClkGovSlewMaxMs         =       20;
-    ClkGovPpbDivisor        =     1000;
-    ClkGovPpbChangeMax      = 10000000;
-    ClkGovSyncedLimitNs     =   100000;
-    ClkGovSyncedLimitPpb    =   100000;
-    ClkGovSyncedHysterisNs  =    10000;
-    ClkGovSyncedHysterisPpb =     1000;
-    ClkGovMaxOffsetSecs     =        3;
+    ClkGovPpbDivisor             =     1000;
+    ClkGovPpbChangeMax           =     1000;
+    ClkGovPpbSyncedLimit         =   100000;
+    ClkGovPpbSyncedHysteresis    =     1000;
+    ClkGovSlewDivisor            =      100;
+    ClkGovSlewChangeMaxMs        =       10;
+    ClkGovSlewSyncedLimitNs      = 10000000; //10ms
+    ClkGovSlewSyncedHysteresisNs =  1000000; //1ms
+    ClkGovSlewOffsetMaxSecs      =        3;
     
                DnsSendRequestsViaIp4 = false;
     NtpClientQuerySendRequestsViaIp4 = false;