mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 20:37:33 +00:00
feat(oc): OC Control — Open Collector выходы Penny/Alex (эталон Thetis)
Byte 1401 High Priority packet: per-band (HF 160m-6m) и per-slot (XVTR) RX/TX-маски на 7 пинов + TX pin action (MOX/TUNE/2TON и комбинации). Только openHPSDR — у Pluto/AD936x такого выхода нет, вкладка Settings скрывается на этом бэкенде. Настройки — вкладка "OC Control" в SettingsForm. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+13
-3
@@ -158,7 +158,8 @@ type
|
||||
procedure SetRunAndFreq(Run: Boolean; DDC0FreqHz, DUCFreqHz: Double;
|
||||
DriveLevel: Byte = 100); virtual; abstract;
|
||||
procedure UpdateState(RXFreqHz, TXFreqHz: Double; DriveLevel: Byte;
|
||||
Transmitting, PAEnabled, AlexEnabled: Boolean); virtual; abstract;
|
||||
Transmitting, PAEnabled, AlexEnabled: Boolean;
|
||||
Tuning: Boolean = False; TwoTone: Boolean = False); virtual; abstract;
|
||||
procedure SendFullHP; virtual; abstract;
|
||||
procedure SendPTT(Active: Boolean); virtual; abstract;
|
||||
|
||||
@@ -189,7 +190,11 @@ type
|
||||
// (мощность там через DriveLevel/DUC). Db < 0.
|
||||
procedure SetTxAtten(Db: Double); virtual;
|
||||
procedure SetAlexConfig(const A: TAlexSettings); virtual;
|
||||
procedure SetXvtrMode(AEnable, ADisablePA: Boolean; ARxAnt: Byte); virtual;
|
||||
// OC Control (Open Collector выходы Penny/Alex) — no-op по умолчанию
|
||||
// (Pluto/AD936x не имеет такого выхода).
|
||||
procedure SetOCConfig(const O: TOCSettings); virtual;
|
||||
procedure SetXvtrMode(AEnable, ADisablePA: Boolean; ARxAnt: Byte;
|
||||
ASlot: Integer = -1); virtual;
|
||||
procedure SendDDCAudio(const LeftRight: array of SmallInt); virtual;
|
||||
procedure SendSpeakerAudio(const Left, Right: array of Single; Count: Integer); virtual;
|
||||
procedure SetSpeakerAudio(AEnabled: Boolean); virtual;
|
||||
@@ -284,7 +289,12 @@ procedure TRadioBackend.SetAlexConfig(const A: TAlexSettings);
|
||||
begin
|
||||
end;
|
||||
|
||||
procedure TRadioBackend.SetXvtrMode(AEnable, ADisablePA: Boolean; ARxAnt: Byte);
|
||||
procedure TRadioBackend.SetXvtrMode(AEnable, ADisablePA: Boolean; ARxAnt: Byte;
|
||||
ASlot: Integer);
|
||||
begin
|
||||
end;
|
||||
|
||||
procedure TRadioBackend.SetOCConfig(const O: TOCSettings);
|
||||
begin
|
||||
end;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user