Disable wide ofsset, need more test for it

pull/4/head
DiSlord 6 years ago
parent 54678530c2
commit 8adcafc85b

@ -919,7 +919,7 @@ void setupSA(void)
extern int SI4432_frequency_changed;
extern int SI4432_offset_changed;
#define __WIDE_OFFSET__
//#define __WIDE_OFFSET__
void set_freq(int V, unsigned long freq) // translate the requested frequency into a setting of the SI4432
{
@ -936,7 +936,11 @@ void set_freq(int V, unsigned long freq) // translate the requested frequency
if (real_old_freq[V] >= 480000000) // 480MHz, high band
delta = delta >> 1;
#ifdef __WIDE_OFFSET__
if (delta > -80000 && delta < 80000) { // and requested frequency can be reached by using the offset registers
#else
if (delta >=0 && delta < 80000) { // and requested frequency can be reached by using the offset registers
#endif
#if 0
if (real_old_freq[V] >= 480000000)
shell_printf("%d: Offs %q HW %d\r\n", SI4432_Sel, (uint32_t)(real_old_freq[V]+delta*2), real_old_freq[V]);
@ -954,15 +958,15 @@ void set_freq(int V, unsigned long freq) // translate the requested frequency
#endif
#ifdef __WIDE_OFFSET__
if (freq >= 480000000) {
SI4432_Set_Frequency(freq + 160000 ); // Impossible to use offset so set SI4432 to new frequency
SI4432_Set_Frequency(freq + 160000 - 2); // Impossible to use offset so set SI4432 to new frequency
SI4432_Write_Byte(SI4432_FREQ_OFFSET1, 0); // set offset to most negative
SI4432_Write_Byte(SI4432_FREQ_OFFSET2, 0x02);
real_old_freq[V] = freq + 160000;
real_old_freq[V] = freq + 160000 - 2;
} else {
SI4432_Set_Frequency(freq + 80000 ); // Impossible to use offset so set SI4432 to new frequency
SI4432_Set_Frequency(freq + 80000 - 1); // Impossible to use offset so set SI4432 to new frequency
SI4432_Write_Byte(SI4432_FREQ_OFFSET1, 0); // set offset to most negative
SI4432_Write_Byte(SI4432_FREQ_OFFSET2, 0x02);
real_old_freq[V] = freq + 80000;
real_old_freq[V] = freq + 80000 - 1;
}
#else
SI4432_Set_Frequency(freq); // Impossible to use offset so set SI4432 to new frequency

Loading…
Cancel
Save

Powered by TurnKey Linux.