# HG changeset patch # User paul # Date 2017-02-06 15:14:49 # Node ID 66679eb623f220f13976c46d57adc7844199539e # Parent ff406706df1084242fba990dd4ee6a11babca65f Bug #657 HK_LFR_xE_CNT doesn't manage the wrap of 8bits counter error diff --git a/src/fsw_misc.c b/src/fsw_misc.c --- a/src/fsw_misc.c +++ b/src/fsw_misc.c @@ -803,7 +803,7 @@ void increment_hk_counter( unsigned char } else { - delta = (255 - oldValue) + newValue; + delta = (CONST_256 - oldValue) + newValue; } *counter = *counter + delta; @@ -815,7 +815,7 @@ void hk_lfr_le_update( void ) hk_lfr_le_t new_hk_lfr_le; unsigned int counter; - counter = (((unsigned int) housekeeping_packet.hk_lfr_le_cnt[0]) * 256) + housekeeping_packet.hk_lfr_le_cnt[1]; + counter = (((unsigned int) housekeeping_packet.hk_lfr_le_cnt[0]) * CONST_256) + housekeeping_packet.hk_lfr_le_cnt[1]; // DPU new_hk_lfr_le.dpu_spw_parity = housekeeping_packet.hk_lfr_dpu_spw_parity; @@ -885,7 +885,7 @@ void hk_lfr_me_update( void ) hk_lfr_me_t new_hk_lfr_me; unsigned int counter; - counter = (((unsigned int) housekeeping_packet.hk_lfr_me_cnt[0]) * 256) + housekeeping_packet.hk_lfr_me_cnt[1]; + counter = (((unsigned int) housekeeping_packet.hk_lfr_me_cnt[0]) * CONST_256) + housekeeping_packet.hk_lfr_me_cnt[1]; // get the current values new_hk_lfr_me.dpu_spw_early_eop = housekeeping_packet.hk_lfr_dpu_spw_early_eop;