Index: RTC.c =================================================================== diff -u -rce3dbb9df432c096ebf31447000f043e6d7f7b00 -rafd5cc2609acbf8ccf9194da1e88461196c35968 --- RTC.c (.../RTC.c) (revision ce3dbb9df432c096ebf31447000f043e6d7f7b00) +++ RTC.c (.../RTC.c) (revision afd5cc2609acbf8ccf9194da1e88461196c35968) @@ -114,6 +114,7 @@ #define FPGA_ACCURACY_TOLERANCE 12U ///< FPGA accuracy tolerance in ms #define RTC_PUBLISH_INTERVAL 18U ///< RTC publish interval in counts (18) #define RTC_REG_ERROR_TIMEOUT_MS ( 3 * MS_PER_SECOND ) ///< RTC register error timeout in milliseconds. +#define RTC_BATTERY_LOW_TIMEOUT_MS ( 3 * MS_PER_SECOND ) ///< RTC battery low timeout in milliseconds. #define TIMER_COUNTER_TO_REQUEST_READ 18U ///< Timer counter for reading time from RTC (18) #define MAX_ALLOWED_FAILED_RTC_TRANSFERS 3U ///< Max allowed failed RTC transfers (3) @@ -293,9 +294,11 @@ #ifdef _DG_ initPersistentAlarm( ALARM_ID_DG_RTC_CONFIG_ERROR, RTC_REG_ERROR_TIMEOUT_MS, RTC_REG_ERROR_TIMEOUT_MS ); + initPersistentAlarm( ALARM_ID_DG_RTC_BATTERY_LOW, RTC_BATTERY_LOW_TIMEOUT_MS, RTC_BATTERY_LOW_TIMEOUT_MS ); #endif #ifdef _HD_ initPersistentAlarm( ALARM_ID_HD_RTC_CONFIG_ERROR, RTC_REG_ERROR_TIMEOUT_MS, RTC_REG_ERROR_TIMEOUT_MS ); + initPersistentAlarm( ALARM_ID_HD_RTC_BATTERY_LOW, RTC_BATTERY_LOW_TIMEOUT_MS, RTC_BATTERY_LOW_TIMEOUT_MS ); #endif } @@ -337,10 +340,6 @@ { isDataOk = FALSE; } - else if ( ( years - YEAR_2000 ) > MAX_ALLOWED_YEARS ) - { - isDataOk = FALSE; - } else { hasWriteToRTCRequested = TRUE;