From 497dd86db101e17a4451e5d551bdfc3ecbe90986 Mon Sep 17 00:00:00 2001 From: erikkaashoek Date: Sat, 2 Apr 2022 13:49:16 +0200 Subject: [PATCH] Eliminate 10MHz spurs with low RBW --- sa_core.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/sa_core.c b/sa_core.c index d0488d9..2a1aab0 100644 --- a/sa_core.c +++ b/sa_core.c @@ -3579,9 +3579,15 @@ again: // Spur redu ADF4351_R_counter(3); } else #endif - if (get_sweep_frequency(ST_SPAN)<500000) - ADF4351_R_counter(3); // To avoid PLL Loop shoulders - else + if (get_sweep_frequency(ST_SPAN)<500000) { + if (actual_rbw_x10 < 1000) { + freq_t tf = ((lf + actual_rbw_x10*1000) / TXCO_DIV3) * TXCO_DIV3; + if (tf + actual_rbw_x10*100 >= lf && tf < lf + actual_rbw_x10*100) // 10MHz + ADF4351_R_counter(4); // To avoid PLL Loop shoulders at multiple of 10MHz + else + ADF4351_R_counter(3); // To avoid PLL Loop shoulders + } + } else ADF4351_R_counter(1); } } else {