mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 18:43:51 +00:00
feat(fm): add universal FM RAW decoder output
This commit is contained in:
+8
-5
@@ -8,11 +8,13 @@ unit ChannelStore;
|
||||
interface
|
||||
|
||||
uses
|
||||
SysUtils, Classes, Math, fpJSON, jsonparser, jsonscanner, PlatformUtils;
|
||||
SysUtils, Classes, Math, fpJSON, jsonparser, jsonscanner, PlatformUtils,
|
||||
RadioModes;
|
||||
|
||||
const
|
||||
CHANNELS_FILE = 'channels.json';
|
||||
CHANNEL_MODE_MAX = 11; // LSB..DMR
|
||||
CHANNEL_MODE_MIN = RadioModes.MODE_MIN;
|
||||
CHANNEL_MODE_MAX = RadioModes.MODE_MAX;
|
||||
|
||||
type
|
||||
TChannel = record
|
||||
@@ -20,7 +22,7 @@ type
|
||||
Name: string;
|
||||
RXFreq: Double; // Hz
|
||||
TXFreq: Double; // Hz
|
||||
Mode: Integer; // 0=LSB ... 10=WFM 11=DMR
|
||||
Mode: Integer; // RadioModes.MODE_* persisted index
|
||||
RptDir: Integer; // 0=none 1=minus 2=plus
|
||||
RptOffsetHz: Double; // Hz
|
||||
CTCSSOn: Boolean;
|
||||
@@ -59,7 +61,7 @@ begin
|
||||
Ch.Name := 'New Channel';
|
||||
Ch.RXFreq := 145500000.0;
|
||||
Ch.TXFreq := 145500000.0;
|
||||
Ch.Mode := 5; // FM
|
||||
Ch.Mode := MODE_FM;
|
||||
Ch.RptDir := 0;
|
||||
Ch.RptOffsetHz := 600000.0;
|
||||
Ch.CTCSSOn := False;
|
||||
@@ -207,7 +209,8 @@ begin
|
||||
Ch.Name := JS(O, 'name', 'Channel');
|
||||
Ch.RXFreq := JD(O, 'rx_freq', 145500000.0);
|
||||
Ch.TXFreq := JD(O, 'tx_freq', 145500000.0);
|
||||
Ch.Mode := EnsureRange(JI(O, 'mode', 5), 0, CHANNEL_MODE_MAX);
|
||||
Ch.Mode := EnsureRange(JI(O, 'mode', MODE_FM),
|
||||
CHANNEL_MODE_MIN, CHANNEL_MODE_MAX);
|
||||
Ch.RptDir := EnsureRange(JI(O, 'rpt_dir', 0), 0, 2);
|
||||
Ch.RptOffsetHz:= JD(O, 'rpt_offset', 600000.0);
|
||||
Ch.CTCSSOn := JB(O, 'ctcss_on', False);
|
||||
|
||||
Reference in New Issue
Block a user