Универсальный синтезатор Si570/Si5351

UR5VCP
Posts: 196
Joined: 05 Mar 2020, 15:18
Позывной: UR5VCP

Re: Универсальный синтезатор Si570/Si5351

Post by UR5VCP »

PupkinAlex wrote: Я имел ввиду использовать малину в качестве многофункционального блока управления трансивером и периферией (секвенсор, ант. тюнер/поворотка, РА и т.п.)
Внесу и я 5 копеек, хоть и не просили. ИМХО, все эти блоки должны быть отдельными. Возможна какая-то интеркоммуникация по той же квадратной шине, или по серийному порту, но не явно в одном физическом блоке. Не зря в том же айкоме стоит блок тюнера со своим отдельным процессором, и от основного проца он "кушает" только выбранный бенд, и при нажатии "тюне" переводит в ТЛГ и нажимает ключ. То есть, его можно без проблем примостырить в любой усилок или трансивер, совершенно без напрягов. Так и тут, проще сделать блок секвенсора на той же тиньке, поворотку на такой же и т д. Легко перестроить, сменить, модифицировать... А не так что глюкнула малинка и трансивер встал колом )))
С удаленным управлением справится та же есп-шка, там дури хватит, но опять же, по отдельности все должно быть функционально закончено!
Не пинайте, это мое личное мнение ))
PupkinAlex
Posts: 57
Joined: 05 Nov 2020, 09:19

Re: Универсальный синтезатор Si570/Si5351

Post by PupkinAlex »

Relayer wrote:Не-не, я не согласен это все писать
Не зацепило значит.. ;) Жаль..
UR5FFR
Site Admin
Posts: 2272
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Так вы сами попробуйте. Например питона там развернуть или еще чего. Там же не сложно :)
PupkinAlex
Posts: 57
Joined: 05 Nov 2020, 09:19

Re: Универсальный синтезатор Si570/Si5351

Post by PupkinAlex »

Relayer wrote:Там же не сложно :)
Конечно! Аналогично тому, как для хирурга со стажем в 20 лет удалить аппендицит.
Кстати, случай из личной практики (не байка): лет тридцать тому назад ремонтировал ламповый цветной ТВ, как раз именно у такого хирурга.
Так вот он, заглянув мне через плечо, произнес такую фразу - "и как ты тут в этом разбираешься? В потрохах копаться легче!" :)

P.S.
UR5VCP wrote:... А не так что глюкнула малинка/ардуина и трансивер встал колом
Извиняюсь за "редакцию" цитаты, но так будет полнее. ;)

P.P.S. Предлагаю здесь оффтоп закончить. Умерла - так умерла..
Хотя, если кому-то это будет интересно, я готов продолжить обсуждение, но в отдельной теме.
SWL
Posts: 94
Joined: 23 Feb 2021, 10:53
Позывной: SWL

Re: Универсальный синтезатор Si570/Si5351

Post by SWL »

Relayer wrote:Текущая частота: trx.state.VFO[trx.GetVFOIndex()]
Текущий бенд: trx.BandIndex

В каком виде отображаются trx.state.VFO[trx.GetVFOIndex()] и trx.BandIndex ?
В числовом (типа 03675000 Гц, и бэнд 0.....8 ) ?
Или в каком то другом виде ?
UR5FFR
Site Admin
Posts: 2272
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Да, в числовом. Частота в герцах
SWL
Posts: 94
Joined: 23 Feb 2021, 10:53
Позывной: SWL

Re: Универсальный синтезатор Si570/Si5351

Post by SWL »

Relayer wrote:Да, в числовом. Частота в герцах
Спасибо, Андрей!
SWL
Posts: 94
Joined: 23 Feb 2021, 10:53
Позывной: SWL

Re: Универсальный синтезатор Si570/Si5351

Post by SWL »

Code: Select all

#define L1 110.0 	// в мкГн
#define L2 110.0 
#define L3 30.0 
#define L4 6.0 
#define L5 6.0	
#define L6 1.0 
#define L7 1.0
#define L8 1.0 
#define L9 1.0 

float Lconst[] = {L1, L2, L3, L4, L5, L6, L7, L8, L9};
float Lval = 0;
float L = 0;

 if (trx.BandIndex == 0) 
    Lval = Lconst[0];
 if (trx.BandIndex == 1) 
    Lval = Lconst[1];    
 if (trx.BandIndex == 2) 
    Lval = Lconst[2]; 
 if (trx.BandIndex == 3) 
    Lval = Lconst[3]; 
 if (trx.BandIndex == 4) 
    Lval = Lconst[4]; 
 if (trx.BandIndex == 5) 
    Lval = Lconst[5]; 
 if (trx.BandIndex == 6) 
    Lval = Lconst[6]; 
 if (trx.BandIndex == 7) 
    Lval = Lconst[7]; 
 if (trx.BandIndex == 8) 
    Lval = Lconst[8]; 

    L = pow(Lval, -6); // в Гн
  

2 Relayer
Андрей, так можно привязать к диапазонам ?
Значения индуктивностей условное.
Компилятор не ругается.
Может можно как то через счетчик, а то выглядит коряво ?
Пробовал и в лоб:
if (trx.BandIndex == 0)
Lval = L1;
Может убрать Lval и все делать через L
UR5VCP
Posts: 196
Joined: 05 Mar 2020, 15:18
Позывной: UR5VCP

Re: Универсальный синтезатор Si570/Si5351

Post by UR5VCP »

Может через case сделать, там при первом совпадении будет брек, а тут у Вас по любому полный цикл проходит.... С кейсом как бы побыстрее будет, если совпадение не самое последнее...
Или внести присвоение значения в основной код, туда где диапазон выбирается...

Или даже...
Смотрите, у Вас нужно делать смену значения только при смене диапазона.
Тогда если уж не влезать в основной код то можно так:
проверяем какой бенд
запоминаем
сравниваем запомненный и снова проверенный
зесли сменился - то запоминаем и переключаем значение индуктивности.

Таким образом, мы и в код не лезем, и вместо прогона через иф или кейс делаем только одно сравнение, ну а в случае переключения то уже полный цикл отработать надо... Ну как то так можно я думаю...
UR5FFR
Site Admin
Posts: 2272
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Code: Select all

Lval = Lconst[trx.BandIndex];
Post Reply