Fix my mistake on measure time

pull/4/head
DiSlord 6 years ago
parent 5acc180a92
commit 6c58939a6f

@ -1625,7 +1625,8 @@ again: // Waiting for a trigger jumps back to here
} }
} }
setting.measure_sweep_time_us = chVTGetSystemTimeX(); // start measure sweep time setting.measure_sweep_time_us = 0;
systime_t measure = chVTGetSystemTimeX(); // start measure sweep time
sweep_again: // stay in sweep loop when output mode and modulation on. sweep_again: // stay in sweep loop when output mode and modulation on.
@ -1765,7 +1766,7 @@ sweep_again: // stay in sweep loop when output mo
// ---------------------- process measured actual sweep time ----------------- // ---------------------- process measured actual sweep time -----------------
// For CW mode value calculated in SI4432_Fill // For CW mode value calculated in SI4432_Fill
if (setting.measure_sweep_time_us == 0) if (setting.measure_sweep_time_us == 0)
setting.measure_sweep_time_us = (chVTGetSystemTimeX() - setting.measure_sweep_time_us) * 100; setting.measure_sweep_time_us = (chVTGetSystemTimeX() - measure) * 100;
// Update actual time on change on status panel // Update actual time on change on status panel
uint32_t delta = abs((int)(setting.actual_sweep_time_us - setting.measure_sweep_time_us)); uint32_t delta = abs((int)(setting.actual_sweep_time_us - setting.measure_sweep_time_us));

@ -410,6 +410,7 @@ void SI4432_Fill(int s, int start)
#endif #endif
uint32_t t = setting.additional_step_delay_us; uint32_t t = setting.additional_step_delay_us;
systime_t measure = chVTGetSystemTimeX(); systime_t measure = chVTGetSystemTimeX();
// __disable_irq();
#if 0 #if 0
SPI2_CLK_LOW; SPI2_CLK_LOW;
int i = start; int i = start;
@ -425,6 +426,7 @@ void SI4432_Fill(int s, int start)
#else #else
shiftInBuf(sel, SI4432_REG_RSSI, (uint8_t *)&age[start], sweep_points - start, t); shiftInBuf(sel, SI4432_REG_RSSI, (uint8_t *)&age[start], sweep_points - start, t);
#endif #endif
// __enable_irq();
setting.measure_sweep_time_us+= (chVTGetSystemTimeX() - measure)*100; setting.measure_sweep_time_us+= (chVTGetSystemTimeX() - measure)*100;
buf_index = start; // Is used to skip 1st entry during level triggering buf_index = start; // Is used to skip 1st entry during level triggering
buf_read = true; buf_read = true;

Loading…
Cancel
Save

Powered by TurnKey Linux.