Central Heating controller using the real time clock, PHY module for internet, 1-wire interface for temperature sensors, a system log and a configuration file
Dependencies: net 1-wire lpc1768 crypto clock web fram log
/media/uploads/andrewboyson/heating.sch
/media/uploads/andrewboyson/heating.brd
/media/uploads/andrewboyson/eagle.epf
Diff: settings/settings.c
- Revision:
- 31:ee99e468f4b9
- Parent:
- 28:bb55def47737
- Child:
- 32:bbf9c8b45a2e
diff -r 07c8612e3112 -r ee99e468f4b9 settings/settings.c --- a/settings/settings.c Tue Jan 29 15:09:34 2019 +0000 +++ b/settings/settings.c Tue Feb 12 15:38:08 2019 +0000 @@ -86,16 +86,16 @@ static int iTftp; //Clock settings -void SetClockSlewDivisor (int value) { ClkGovSlewDivisor = value; FramWrite(iClkGovSlewDivisor, 4, &ClkGovSlewDivisor ); } -void SetClockSlewMaxMs (int value) { ClkGovSlewMaxMs = value; FramWrite(iClkGovSlewMaxMs, 4, &ClkGovSlewMaxMs ); } -void SetClockPpbDivisor (int value) { ClkGovPpbDivisor = value; FramWrite(iClkGovPpbDivisor, 4, &ClkGovPpbDivisor ); } -void SetClockPpbChangeMax (int value) { ClkGovPpbChangeMax = value; FramWrite(iClkGovPpbChangeMax, 4, &ClkGovPpbChangeMax ); } -void SetClockSyncedLimitNs (int value) { ClkGovSyncedLimitNs = value; FramWrite(iClkGovSyncedLimitNs, 4, &ClkGovSyncedLimitNs ); } -void SetClockSyncedLimitPpb (int value) { ClkGovSyncedLimitPpb = value; FramWrite(iClkGovSyncedLimitPpb, 4, &ClkGovSyncedLimitPpb ); } -void SetClockSyncedHysterisNs (int value) { ClkGovSyncedHysterisNs = value; FramWrite(iClkGovSyncedHysterisNs, 4, &ClkGovSyncedHysterisNs ); } -void SetClockSyncedHysterisPpb(int value) { ClkGovSyncedHysterisPpb = value; FramWrite(iClkGovSyncedHysterisPpb, 4, &ClkGovSyncedHysterisPpb); } -void SetClockMaxOffsetSecs (int value) { ClkGovMaxOffsetSecs = value; FramWrite(iClkGovMaxOffsetSecs, 4, &ClkGovMaxOffsetSecs ); } -void ChgTraceSync () { ClkGovTrace = !ClkGovTrace ; FramWrite(iClkGov, 1, &ClkGovTrace ); } +void SetClockSlewDivisor (int value) { ClkGovSlewDivisor = value; FramWrite(iClkGovSlewDivisor, 4, &ClkGovSlewDivisor ); } +void SetClockSlewMaxMs (int value) { ClkGovSlewChangeMaxMs = value; FramWrite(iClkGovSlewMaxMs, 4, &ClkGovSlewChangeMaxMs ); } +void SetClockPpbDivisor (int value) { ClkGovPpbDivisor = value; FramWrite(iClkGovPpbDivisor, 4, &ClkGovPpbDivisor ); } +void SetClockPpbChangeMax (int value) { ClkGovPpbChangeMax = value; FramWrite(iClkGovPpbChangeMax, 4, &ClkGovPpbChangeMax ); } +void SetClockSyncedLimitNs (int value) { ClkGovSlewSyncedLimitNs = value; FramWrite(iClkGovSyncedLimitNs, 4, &ClkGovSlewSyncedLimitNs ); } +void SetClockSyncedLimitPpb (int value) { ClkGovPpbSyncedLimit = value; FramWrite(iClkGovSyncedLimitPpb, 4, &ClkGovPpbSyncedLimit ); } +void SetClockSyncedHysterisNs (int value) { ClkGovSlewSyncedHysteresisNs = value; FramWrite(iClkGovSyncedHysterisNs, 4, &ClkGovSlewSyncedHysteresisNs); } +void SetClockSyncedHysterisPpb(int value) { ClkGovPpbSyncedHysteresis = value; FramWrite(iClkGovSyncedHysterisPpb, 4, &ClkGovPpbSyncedHysteresis ); } +void SetClockMaxOffsetSecs (int value) { ClkGovSlewOffsetMaxSecs = value; FramWrite(iClkGovMaxOffsetSecs, 4, &ClkGovSlewOffsetMaxSecs ); } +void ChgTraceSync () { ClkGovTrace = !ClkGovTrace ; FramWrite(iClkGov, 1, &ClkGovTrace ); } //Heating settings void ChgTraceOneWire () { OneWireTrace = !OneWireTrace ; FramWrite(iOneWire, 1, &OneWireTrace ); } @@ -183,15 +183,15 @@ int32_t def4; char b; - def4 = 10; address = FramLoad( 4, &ClkGovSlewDivisor, &def4); if (address < 0) return -1; iClkGovSlewDivisor = address; - def4 = 20; address = FramLoad( 4, &ClkGovSlewMaxMs, &def4); if (address < 0) return -1; iClkGovSlewMaxMs = address; - def4 = 1000; address = FramLoad( 4, &ClkGovPpbDivisor, &def4); if (address < 0) return -1; iClkGovPpbDivisor = address; - def4 = 10000000; address = FramLoad( 4, &ClkGovPpbChangeMax, &def4); if (address < 0) return -1; iClkGovPpbChangeMax = address; - def4 = 100000; address = FramLoad( 4, &ClkGovSyncedLimitNs, &def4); if (address < 0) return -1; iClkGovSyncedLimitNs = address; - def4 = 100000; address = FramLoad( 4, &ClkGovSyncedLimitPpb, &def4); if (address < 0) return -1; iClkGovSyncedLimitPpb = address; - def4 = 10000; address = FramLoad( 4, &ClkGovSyncedHysterisNs, &def4); if (address < 0) return -1; iClkGovSyncedHysterisNs = address; - def4 = 1000; address = FramLoad( 4, &ClkGovSyncedHysterisPpb, &def4); if (address < 0) return -1; iClkGovSyncedHysterisPpb = address; - def4 = 3; address = FramLoad( 4, &ClkGovMaxOffsetSecs, &def4); if (address < 0) return -1; iClkGovMaxOffsetSecs = address; + def4 = 10; address = FramLoad( 4, &ClkGovSlewDivisor, &def4); if (address < 0) return -1; iClkGovSlewDivisor = address; + def4 = 20; address = FramLoad( 4, &ClkGovSlewChangeMaxMs, &def4); if (address < 0) return -1; iClkGovSlewMaxMs = address; + def4 = 1000; address = FramLoad( 4, &ClkGovPpbDivisor, &def4); if (address < 0) return -1; iClkGovPpbDivisor = address; + def4 = 10000000; address = FramLoad( 4, &ClkGovPpbChangeMax, &def4); if (address < 0) return -1; iClkGovPpbChangeMax = address; + def4 = 100000; address = FramLoad( 4, &ClkGovSlewSyncedLimitNs, &def4); if (address < 0) return -1; iClkGovSyncedLimitNs = address; + def4 = 100000; address = FramLoad( 4, &ClkGovPpbSyncedLimit, &def4); if (address < 0) return -1; iClkGovSyncedLimitPpb = address; + def4 = 10000; address = FramLoad( 4, &ClkGovSlewSyncedHysteresisNs, &def4); if (address < 0) return -1; iClkGovSyncedHysterisNs = address; + def4 = 1000; address = FramLoad( 4, &ClkGovPpbSyncedHysteresis, &def4); if (address < 0) return -1; iClkGovSyncedHysterisPpb = address; + def4 = 3; address = FramLoad( 4, &ClkGovSlewOffsetMaxSecs, &def4); if (address < 0) return -1; iClkGovMaxOffsetSecs = address; address = FramLoad( 1, &b, NULL); ClkGovTrace = b; if (address < 0) return -1; iClkGov = address; address = FramLoad( 1, &b, NULL); OneWireTrace = b; if (address < 0) return -1; iOneWire = address; address = FramLoad( 1, &b, NULL); DnsSendRequestsViaIp4 = b; if (address < 0) return -1; iDnsSendRequestsViaIp4 = address;