if482.cpp: comments added

This commit is contained in:
Klaus K Wilting 2019-01-28 21:47:44 +01:00
parent 95521641ac
commit bf1d8ab1d4

View File

@ -1,7 +1,19 @@
#if defined HAS_IF482 && defined HAS_RTC #if defined HAS_IF482 && defined HAS_RTC
/* /* NOTE:
The IF482 Generator needs an high precise 1 Hz clock signal which cannot be
acquired in suitable precision on the ESP32 SoC itself. Additional clocking
hardware is required, ususally the clock signal is generated by external RTC or
GPS chip or a GPS chip which can generate a precise clock signal (+/- 2ppm). In
this example code we use a Maxim DS3231 RTC chip, and configure it's interrupt
output as clock output. The clock signal triggers an interrupt on the ESP32,
which controls the realtime output of IF482 telegram. This is why code in
IF482.cpp depends on code in RTCTIME.cpp.
*/
///////////////////////////////////////////////////////////////////////////////
/*
IF482 Generator to control clocks with IF482 telegram input (e.g. BÜRK BU190) IF482 Generator to control clocks with IF482 telegram input (e.g. BÜRK BU190)
Example IF482 telegram: "OAL160806F170400" Example IF482 telegram: "OAL160806F170400"
@ -63,6 +75,7 @@ L: Local Time
not evaluated by model BU-190 not evaluated by model BU-190
*/ */
///////////////////////////////////////////////////////////////////////////////
#include "if482.h" #include "if482.h"
@ -79,7 +92,7 @@ int if482_init(void) {
// open serial interface // open serial interface
IF482.begin(HAS_IF482); IF482.begin(HAS_IF482);
// use rtc 1Hz clock for triggering IF482 telegram send // use external rtc 1Hz clock for triggering IF482 telegram
Rtc.SetSquareWavePinClockFrequency(DS3231SquareWaveClock_1Hz); Rtc.SetSquareWavePinClockFrequency(DS3231SquareWaveClock_1Hz);
Rtc.SetSquareWavePin(DS3231SquareWavePin_ModeClock); Rtc.SetSquareWavePin(DS3231SquareWavePin_ModeClock);
pinMode(RTC_INT, INPUT_PULLUP); pinMode(RTC_INT, INPUT_PULLUP);
@ -124,7 +137,7 @@ void if482_loop(void *pvParameters) {
time_t t, tt; time_t t, tt;
const TickType_t shotTime = pdMS_TO_TICKS(IF482_OFFSET); const TickType_t shotTime = pdMS_TO_TICKS(IF482_OFFSET);
// wait until begin of a new second // wait until begin of a new second to sync clock signal and absolute time
t = tt = now(); t = tt = now();
do { do {
tt = now(); tt = now();