mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 20:37:33 +00:00
TUN button — Thetis-style тон через WDSP PostGen
- BtnTUN рядом с MOX. Включает SetTXAPostGenRun(TXA, 1) с тоном (mode=0, mag=1.0, freq из настроек) и активирует MOX. PTT/HW игнорируются во время tune. - Drive в режиме TUN использует FTXSettings.TUNLevel вместо слайдера, per-band калибровка FPABandCal применяется одинаково. - Settings → Transmit → Tune (TUN): TUNLevel 0..100% (def 10), TUNFreq 100..5000 Hz (def 750). Live-обновление во время tune.
This commit is contained in:
@@ -47,6 +47,11 @@ type
|
||||
// ATT on TX — ослабление RX-ADC во время передачи (защита от утечки TX).
|
||||
// DUC Specific bytes 57/58/59 (StepAtten 0/1/2). Thetis default: 31 dB.
|
||||
AttOnTX: Integer; // 0..31 dB
|
||||
// Tune (кнопка TUN) — генерация тонального сигнала через WDSP PostGen.
|
||||
// Уровень — отдельный от слайдера Drive, проходит через ту же
|
||||
// per-band калибровку. Thetis defaults: level=10 %, freq=750 Hz.
|
||||
TUNLevel: Integer; // 0..100 (% от полной шкалы Drive)
|
||||
TUNFreq: Integer; // Hz, обычно 600..1500 для SSB tune
|
||||
// TX bandpass filter
|
||||
FilterLow: Integer; // Hz, для SSB обычно 100
|
||||
FilterHigh: Integer; // Hz, для SSB обычно 2800
|
||||
@@ -730,6 +735,9 @@ begin
|
||||
T.MicGainDB := 10.0;
|
||||
// ATT on TX — Thetis default 31 dB (полная защита RX-ADC во время передачи)
|
||||
T.AttOnTX := 31;
|
||||
// Tune — Thetis defaults
|
||||
T.TUNLevel := 10;
|
||||
T.TUNFreq := 750;
|
||||
// SSB-фильтр по умолчанию
|
||||
T.FilterLow := 100;
|
||||
T.FilterHigh := 2800;
|
||||
@@ -804,6 +812,8 @@ begin
|
||||
T.MicPTTEnabled := JB(O,'mic_ptt_enabled', T.MicPTTEnabled);
|
||||
T.MicGainDB := JD(O,'mic_gain_db', T.MicGainDB);
|
||||
T.AttOnTX := EnsureRange(JI(O,'att_on_tx', T.AttOnTX), 0, 31);
|
||||
T.TUNLevel := EnsureRange(JI(O,'tun_level', T.TUNLevel), 0, 100);
|
||||
T.TUNFreq := EnsureRange(JI(O,'tun_freq', T.TUNFreq), 100, 5000);
|
||||
T.FilterLow := JI(O,'filter_low', T.FilterLow);
|
||||
T.FilterHigh := JI(O,'filter_high', T.FilterHigh);
|
||||
T.FilterNC := JI(O,'filter_nc', T.FilterNC);
|
||||
@@ -859,6 +869,8 @@ begin
|
||||
JW(O,'mic_ptt_enabled', T.MicPTTEnabled);
|
||||
JW(O,'mic_gain_db', T.MicGainDB);
|
||||
JW(O,'att_on_tx', T.AttOnTX);
|
||||
JW(O,'tun_level', T.TUNLevel);
|
||||
JW(O,'tun_freq', T.TUNFreq);
|
||||
JW(O,'filter_low', T.FilterLow);
|
||||
JW(O,'filter_high', T.FilterHigh);
|
||||
JW(O,'filter_nc', T.FilterNC);
|
||||
|
||||
Reference in New Issue
Block a user