Repair load preset

pull/8/head
erikkaashoek 5 years ago
parent 8a4179c684
commit a534f5fad4

@ -188,7 +188,7 @@ caldata_recall(uint16_t id)
memcpy(dst, src, sizeof(setting_t)); memcpy(dst, src, sizeof(setting_t));
// Restore stored trace // Restore stored trace
memcpy(stored_t, &src[1], sizeof(stored_t)); memcpy(stored_t, &src[1], sizeof(stored_t));
update_min_max_freq();
update_frequencies(); update_frequencies();
set_scale(setting.scale); set_scale(setting.scale);
set_reflevel(setting.reflevel); set_reflevel(setting.reflevel);

@ -172,6 +172,7 @@ extern const char *info_about[];
// ------------------------------- sa_core.c ---------------------------------- // ------------------------------- sa_core.c ----------------------------------
void reset_settings(int); void reset_settings(int);
void update_min_max_freq(void);
//void ui_process_touch(void); //void ui_process_touch(void);
void SetPowerGrid(int); void SetPowerGrid(int);
void SetRefLevel(float); void SetRefLevel(float);

@ -62,10 +62,44 @@ this is a very long string only used to fill memory so I know when the memory is
; ;
#endif #endif
void update_min_max_freq(void)
{
switch(setting.mode) {
case M_LOW:
minFreq = 0;
maxFreq = 350000000;
break;
#ifdef __ULTRA__
case M_ULTRA:
minFreq = 674000000;
maxFreq = 4300000000;
break;
#endif
case M_GENLOW:
minFreq = 0;
maxFreq = 350000000;
break;
case M_HIGH:
#ifdef __ULTRA_SA__
minFreq = 00000000;
maxFreq = 2000000000;
#else
minFreq = 24*setting_frequency_10mhz;
maxFreq = 96*setting_frequency_10mhz;
#endif
break;
case M_GENHIGH:
minFreq = 240000000;
maxFreq = 960000000;
break;
}
}
void reset_settings(int m) void reset_settings(int m)
{ {
// strcpy((char *)spi_buffer, dummy); // strcpy((char *)spi_buffer, dummy);
setting.mode = m; setting.mode = m;
update_min_max_freq();
sweep_mode |= SWEEP_ENABLE; sweep_mode |= SWEEP_ENABLE;
setting.unit_scale_index = 0; setting.unit_scale_index = 0;
setting.unit_scale = 1; setting.unit_scale = 1;
@ -116,48 +150,33 @@ void reset_settings(int m)
#endif #endif
switch(m) { switch(m) {
case M_LOW: case M_LOW:
minFreq = 0; set_sweep_frequency(ST_START, minFreq);
maxFreq = 350000000; set_sweep_frequency(ST_STOP, maxFreq);
set_sweep_frequency(ST_START, (uint32_t) 0);
set_sweep_frequency(ST_STOP, (uint32_t) 350000000);
setting.attenuate = 30.0; setting.attenuate = 30.0;
setting.auto_attenuation = true; setting.auto_attenuation = true;
setting.sweep_time_us = 0; setting.sweep_time_us = 0;
break; break;
#ifdef __ULTRA__ #ifdef __ULTRA__
case M_ULTRA: case M_ULTRA:
minFreq = 674000000; set_sweep_frequency(ST_START, minFreq);
maxFreq = 4300000000; set_sweep_frequency(ST_STOP, maxFreq);
set_sweep_frequency(ST_START, (uint32_t) minFreq);
set_sweep_frequency(ST_STOP, (uint32_t) maxFreq);
setting.attenuate = 0; setting.attenuate = 0;
setting.sweep_time_us = 0; setting.sweep_time_us = 0;
break; break;
#endif #endif
case M_GENLOW: case M_GENLOW:
setting.drive=8; setting.drive=8;
minFreq = 0;
maxFreq = 350000000;
set_sweep_frequency(ST_CENTER, 10000000); set_sweep_frequency(ST_CENTER, 10000000);
set_sweep_frequency(ST_SPAN, 0); set_sweep_frequency(ST_SPAN, 0);
setting.sweep_time_us = 10*ONE_SECOND_TIME; setting.sweep_time_us = 10*ONE_SECOND_TIME;
break; break;
case M_HIGH: case M_HIGH:
#ifdef __ULTRA_SA__
minFreq = 00000000;
maxFreq = 2000000000;
#else
minFreq = 24*setting_frequency_10mhz;
maxFreq = 96*setting_frequency_10mhz;
#endif
set_sweep_frequency(ST_START, minFreq); set_sweep_frequency(ST_START, minFreq);
set_sweep_frequency(ST_STOP, maxFreq); set_sweep_frequency(ST_STOP, maxFreq);
setting.sweep_time_us = 0; setting.sweep_time_us = 0;
break; break;
case M_GENHIGH: case M_GENHIGH:
setting.drive=8; setting.drive=8;
minFreq = 240000000;
maxFreq = 960000000;
set_sweep_frequency(ST_CENTER, 300000000); set_sweep_frequency(ST_CENTER, 300000000);
set_sweep_frequency(ST_SPAN, 0); set_sweep_frequency(ST_SPAN, 0);
setting.sweep_time_us = 10*ONE_SECOND_TIME; setting.sweep_time_us = 10*ONE_SECOND_TIME;

@ -499,7 +499,7 @@ static UI_FUNCTION_ADV_CALLBACK(menu_load_preset_acb)
} }
if (caldata_recall(data) == -1) { if (caldata_recall(data) == -1) {
if (data == 0) if (data == 0)
reset_settings(setting.mode); // Restore all defaults reset_settings(setting.mode); // Restore factory defaults
else { else {
draw_menu(); draw_menu();
return; return;

Loading…
Cancel
Save

Powered by TurnKey Linux.