Универсальный синтезатор Si570/Si5351
Re: Универсальный синтезатор Si570/Si5351
Еще добавлю:
так как синтез только для RX, то хотелось бы заменить назначение кнопок
cmdSplit, cmdQRP и cmdRIT переназначить на другие нужды-
типа подавителя импульсных помех, вырезания помехи в полосе фильтра,
коммутация антенн...
Просто вывод управления на свободные пины ардуины и индикация на дисплее.
В программировании не силён, поэтому прошу помощи.
так как синтез только для RX, то хотелось бы заменить назначение кнопок
cmdSplit, cmdQRP и cmdRIT переназначить на другие нужды-
типа подавителя импульсных помех, вырезания помехи в полосе фильтра,
коммутация антенн...
Просто вывод управления на свободные пины ардуины и индикация на дисплее.
В программировании не силён, поэтому прошу помощи.
Re: Универсальный синтезатор Si570/Si5351
Очень плохо что в программировании не сильны. Хотя бы азы осваивайте - я не могу все хотелки удовлетворять.
Надеюсь у вас прошивка свежая? Потому что я буду писать рекомендации только по ней - старая прошивка которая шла несколько лет тому назад на раннюю 12ти кнопочную модель не поддерживается.
В новой прошивке в config_sw.h задаются моды в которых работает тракт и ПЧ для них. Там по дефолту прописана АМ например
Надеюсь у вас прошивка свежая? Потому что я буду писать рекомендации только по ней - старая прошивка которая шла несколько лет тому назад на раннюю 12ти кнопочную модель не поддерживается.
В новой прошивке в config_sw.h задаются моды в которых работает тракт и ПЧ для них. Там по дефолту прописана АМ например
Re: Универсальный синтезатор Si570/Si5351
Прошивка свежая, всё работает. Подружил с MixW.
Re: Универсальный синтезатор Si570/Si5351
Как убрать лишние моды Вы писали,а вот как добавить...
Помаленьку осваиваю ардуину- сделал стрелочную шкалу вместо линейной
в disp_ILI9341.h
А в остальном пока тупик.
Помаленьку осваиваю ардуину- сделал стрелочную шкалу вместо линейной
в disp_ILI9341.h
А в остальном пока тупик.
Re: Универсальный синтезатор Si570/Si5351
Моды добавляются просто - в config_sw.h правите DEFINED_MODES - добавляете туда моды и ПЧ для них. Например вот я добавил две моды для АМ - широкая и узкая полоса.
В Syntez.ino находите UpdateBandCtrl() - там управление пинами i2c расширителя
trx.state.mode - это текущая мода, ее индекс в DEFINED_MODES начиная с 0. MODE_CW, MODE_USB и другие определены в config.h
для примера выше с двумя АМ можно задать индексы
Теперь выводим на BCPN_SB тип АМ фильтра
Чтобы выводить доп сигналы можно либо повесить еще один i2c расширитель. Или использовать пины A0/A1/A2 - они свободны. Выводить туда сигналы можно стандартно
Code: Select all
#define DEFINED_MODES \
{"LSB", '1', SBM_LSB, true, 0, {11060000L+300, 11056950L-300}}, \
{"USB", '2', SBM_USB, true, 0, {11060000L+300, 11056950L-300}}, \
{"CW", '3', SBM_USB, false, 700, {11060000L-700, 11056950L+700}}, \
{"AMW", '5', SBM_DSB, false, 0, {11070000L, 0}}, \
{"AMN", '5', SBM_DSB, false, 0, {11070000L, 0}}
Code: Select all
outBandCtrl.Set(BCPN_CW, trx.state.mode == MODE_CW);
outBandCtrl.Set(BCPN_SB, trx.state.mode == MODE_USB);
Code: Select all
// predefined modes - index in Modes[] (see config_sw.h)
#define MODE_LSB 0
#define MODE_USB 1
#define MODE_CW 2
Code: Select all
#define MODE_AMW 3
#define MODE_AMN 4
Code: Select all
outBandCtrl.Set(BCPN_SB, trx.state.mode == MODE_AMN);
-
- Posts: 57
- Joined: 05 Nov 2020, 09:19
Re: Универсальный синтезатор Si570/Si5351
А код можно увидеть? Шибко понравилось.SWL wrote: сделал стрелочную шкалу вместо линейной
в disp_ILI9341.h

P.S.
Чет не склеивается, однако.SWL wrote:В программировании не силён.

Re: Универсальный синтезатор Si570/Si5351
Спасибо, Андрей!Relayer wrote:Моды добавляются просто - в config_sw.h правите DEFINED_MODES - добавляете туда моды и ПЧ для них. Например вот я добавил две моды для АМ - широкая и узкая полоса.
В Syntez.ino находите UpdateBandCtrl() - там управление пинами i2c расширителяCode: Select all
#define DEFINED_MODES \ {"LSB", '1', SBM_LSB, true, 0, {11060000L+300, 11056950L-300}}, \ {"USB", '2', SBM_USB, true, 0, {11060000L+300, 11056950L-300}}, \ {"CW", '3', SBM_USB, false, 700, {11060000L-700, 11056950L+700}}, \ {"AMW", '5', SBM_DSB, false, 0, {11070000L, 0}}, \ {"AMN", '5', SBM_DSB, false, 0, {11070000L, 0}}
trx.state.mode - это текущая мода, ее индекс в DEFINED_MODES начиная с 0. MODE_CW, MODE_USB и другие определены в config.hCode: Select all
outBandCtrl.Set(BCPN_CW, trx.state.mode == MODE_CW); outBandCtrl.Set(BCPN_SB, trx.state.mode == MODE_USB);
для примера выше с двумя АМ можно задать индексыCode: Select all
// predefined modes - index in Modes[] (see config_sw.h) #define MODE_LSB 0 #define MODE_USB 1 #define MODE_CW 2
Теперь выводим на BCPN_SB тип АМ фильтраCode: Select all
#define MODE_AMW 3 #define MODE_AMN 4
Чтобы выводить доп сигналы можно либо повесить еще один i2c расширитель. Или использовать пины A0/A1/A2 - они свободны. Выводить туда сигналы можно стандартноCode: Select all
outBandCtrl.Set(BCPN_SB, trx.state.mode == MODE_AMN);
Завтра попробую исправить и прошить с изменениями.
Re: Универсальный синтезатор Si570/Si5351
Код сброшу завтра-пишу с планшета.PupkinAlex wrote:А код можно увидеть? Шибко понравилось.SWL wrote: сделал стрелочную шкалу вместо линейной
в disp_ILI9341.h
P.S.Чет не склеивается, однако.SWL wrote:В программировании не силён.
Стрелочная шкала нарисована поверх индикации расстройки- расстройка не видна. Режим RIT для приемника не нужен, а у меня синтез только под прием.
С дисплеем разобрался за неделю, а вот дальше пока не получается

Шкала немножко корявая- используются те же 15 уровней, что и в линейной- стрелка дергается и мерцает при измерении.
Может кто поправит косяки для плавности хода. Задержки не пробовал, пока работает так.
Побовал написать NBL вместо QRP,
но буква N почему то не индицируется.
Пока так получилось.
Last edited by SWL on 14 May 2021, 23:10, edited 1 time in total.