if(setting.modulation!=MO_EXTERNAL&&!in_selftest){// latter is for frequency calculation
cycle_counter++;
if(config.cor_am==-18){
if(chVTGetSystemTimeX()-start_of_sweep_timestamp>1000){// 100 ms, System tick 10000 per second
start_of_sweep_timestamp=chVTGetSystemTimeX();
modulation_delay-=config.cor_am;
intactual_delay=100000/cycle_counter/modulation_steps;// In units of 1 microsecond
config.cor_am+=modulation_delay-actual_delay;
if(config.cor_am>0)
config.cor_am=0;
modulation_delay+=config.cor_am;
cycle_counter=0;
}
my_microsecond_delay(modulation_delay);
}
else
my_microsecond_delay(modulation_delay);
}else
my_microsecond_delay(modulation_delay);
}
}
// -------------------------------- Acquisition loop for one requested frequency covering spur avoidance and vbwsteps ------------------------
pureRSSI_tRSSI=float_TO_PURE_RSSI(-150);
@ -4344,11 +4364,14 @@ again: // Spur redu
return(0);// abort
if(i==1&&MODE_OUTPUT(setting.mode)&&setting.modulation!=MO_NONE&&setting.modulation!=MO_EXTERNAL){// if in output mode with modulation and LO setup done
plot_printf(b->text,sizeofb->text,"MOD: %4dHz AM %d%%",(int)(setting.modulation_frequency),setting.modulation_depth_x100);
else
plot_printf(b->text,sizeofb->text,"MOD: %4dHz FM %4QHz DEVIATION",(int)(setting.modulation_frequency),(freq_t)(setting.modulation_deviation_div100*100));
plot_printf(b->text,sizeofb->text,"MOD: %4dHz FM %4QHz",(int)(setting.modulation_frequency),(freq_t)(setting.modulation_deviation_div100*100));