Skip to content

Commit 3deb08c

Browse files
author
Jarkko Paso
committed
FHSS: use divider function in ufsi calculation
1 parent 74c7f37 commit 3deb08c

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

source/Service_Libs/fhss/fhss_ws.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -275,11 +275,11 @@ static uint32_t fhss_ws_calculate_ufsi(fhss_structure_t *fhss_structure, uint32_
275275
cur_slot = fhss_structure->number_of_channels;
276276
}
277277
cur_slot--;
278-
uint32_t remaining_time_ms = get_remaining_slots_us(fhss_structure, fhss_unicast_handler, fhss_structure->ws->fhss_configuration.fhss_uc_dwell_interval*1000) / 1000;
278+
uint32_t remaining_time_ms = divide_integer(get_remaining_slots_us(fhss_structure, fhss_unicast_handler, fhss_structure->ws->fhss_configuration.fhss_uc_dwell_interval*1000), 1000);
279279
uint32_t time_to_tx = 0;
280280
uint32_t cur_time = fhss_structure->callbacks.read_timestamp(fhss_structure->fhss_api);
281281
if (cur_time < tx_time) {
282-
time_to_tx = (tx_time - cur_time) / 1000;
282+
time_to_tx = divide_integer((tx_time - cur_time), 1000);
283283
}
284284
uint64_t ms_since_seq_start = (cur_slot * dwell_time) + (dwell_time-remaining_time_ms) + time_to_tx;
285285
uint32_t seq_length = 0x10000;
@@ -316,7 +316,7 @@ static uint16_t fhss_ws_calculate_destination_slot(fhss_ws_neighbor_timing_info_
316316
seq_length = neighbor_timing_info->uc_timing_info.unicast_number_of_channels;
317317
}
318318
uint32_t dest_ms_since_seq_start = own_ceil((float)((uint64_t)ufsi*seq_length*dwell_time) / DEF_2E24);
319-
return (own_floor(((float)((tx_time - ufsi_timestamp)/1000 + dest_ms_since_seq_start) / dwell_time)) % seq_length);
319+
return (own_floor(((float)(divide_integer((tx_time - ufsi_timestamp),1000) + dest_ms_since_seq_start) / dwell_time)) % seq_length);
320320
}
321321

322322
static uint32_t fhss_ws_get_sf_timeout_callback(fhss_structure_t *fhss_structure)

0 commit comments

Comments
 (0)