Code: Select all
void TRX::SwitchToBand(int band) {
if (BandIndex != band) {
BandIndex = band;
Freq = BandData[BandIndex];
sideband = Bands[BandIndex].sideband;
CW = inCW();
}
}
Code: Select all
void TRX::SwitchToBand(int band) {
if (BandIndex != band) {
BandIndex = band;
Freq = BandData[BandIndex];
sideband = Bands[BandIndex].sideband;
CW = inCW();
}
}
Code: Select all
#define SETTINGS_COUNT 3
#define SETTINGS_DATA \
{02, 8300, 5000, 11000, 1, "CLK1"}, /* Частота второго гетеродина (фиксиованная), от 5 до 11 МГц с шагом в 1 кГц. Дефолтное значение 8.3 МГц */\
{03, 4, -20000, 20000, 1, "SI5351 XTAL"}, /* Подстройка частоты Si5351 под опорный генератор */\
{0, 0, 0, 0, 0, "FULL RESET"} /* Очистка всех пользовательских настроек синтезатора, обнуление EEPROM */\
Code: Select all
void vfo_set_freq(long f1, long f2, long f3)
{
#ifdef VFO_SI5351
vfo5351.set_freq(f1,f2,f3);
#endif
}
void UpdateFreq()
{
uint8_t cwtx = trx.TX;
#ifdef MODE_SINGLE_IF
#if defined(SSBDetectorFreq_USB) && defined(SSBDetectorFreq_LSB)
vfo_set_freq( // инверсия боковой - гетеродин сверху
CLK0_MULT*(trx.Freq + (trx.sideband == LSB ? (SSBDetectorFreq_USB))),
cwtx? 0: CLK1_MULT*Settings[ID_CLK1]*1000,
);
#elif defined(SSBDetectorFreq_USB)
long f = trx.Freq;
if (trx.sideband == LSB) {
f+=(SSBDetectorFreq_USB);
} else {
f = abs((SSBDetectorFreq_USB)-f);
}
vfo_set_freq(
CLK0_MULT*f,
cwtx? 0: CLK1_MULT*Settings[ID_CLK1]*1000,
#ifdef CWTX_DIRECT_FREQ
cwtx? trx.Freq+(trx.sideband == LSB ? ): 0
#else
cwtx? (SSBDetectorFreq_USB): 0
#endif
);
#endif
#endif
}
Code: Select all
{01, 8800, 5000, 11000, 1, "CLK0"}, /* Частота первого гетеродина (перестраиваемая), от 5 до 11 МГц с шагом в 1 кГц. Дефолтное значение 8.8 МГц */\
Code: Select all
// Частота ПЧ (SSBDetectorFreq_USB), в Гц.
#define SSBDetectorFreq_USB 8800000L
Не вопрос, код в аттаче. Еще интересует такой интересный момент. Вот есть у меня атмеги328-е, китайские, пиленные, подозрительные. Но они хорошо работают в этой конструкции (проблемы с ними начинаются в более... серьезных изделиях). И есть кучка нормальных, оригинальных атмег168, которые тоже хотелось бы задействовать в этом деле, сэкономив 328-е для чего-то более мощного. Компилятор ардуиновский говорит: не вопрос, вот тебе код для 168-й, теперь, мол, программа и туда влезет со свистом! Беру код, паяю 168-ю, благо по ножкам идентичны, заливаю код... И ничего. Разве есть какие-то принципиальные отличия между микросхемами , ну, за вычетом меньшего ОЗУ и флешки?UR5FFR wrote:Весь код зазипуйте и приатачьте - посмотрю