2veso74
Я начинающий в СИ, более дружен с ассемблером....
Вижу это так:
Для вывода "чистой" частоты передачи объявляем дополнительную процедуру _t, а старую
для унификации переименовываем в _r.
//
void si5351_set_freq
_r(uint32_t frequency) {
si5351.set_freq(frequency * SI5351_FREQ_MULT, SI5351_
CLK0);
}
void si5351_set_freq
_t(uint32_t frequency) {
si5351.set_freq(frequency * SI5351_FREQ_MULT, SI5351_
CLK2);
}
//
Ну и далее безхитростно впихиваем код генерации "чистой" частоты передачи в процедуру отображения RX/TX. Это не очень красиво, позже перенесем в loop, но должно работать.
Здесь же сдвигаем частоту приема для самоконтроля
//
if (rx_tx)
{oled.print("1"); // "1" is "RX" in labels.h
si5351_set_freq_t(0);}
si5351_set_freq_r(rx - IF_FREQ);
else
oled.print("2"); // "2" is "TX" in labels.h
si5351_set_freq_t(rx);
si5351_set_freq_r(rx - IF_FREQ + 700);
//
Вечером попробую, отпишусь.
На ходу придумалось
как сделать RIT. Просто поставить еще один валкодер и вставить код перестройки частоты BFO на CLK1 точно так же как на VFO на CLK0.