mirror of
https://github.com/30hours/blah2.git
synced 2024-11-08 12:25:42 +00:00
Clearer setting of IF bandwidth and type
This commit is contained in:
parent
f9dba5813f
commit
f7e3591606
2 changed files with 24 additions and 19 deletions
|
@ -57,7 +57,25 @@ RspDuo::RspDuo(std::string _type, uint32_t _fc,
|
||||||
{125000, 16},
|
{125000, 16},
|
||||||
{62500, 32}
|
{62500, 32}
|
||||||
};
|
};
|
||||||
|
std::unordered_map<int, sdrplay_api_Bw_MHzT> ifBandwidthMap = {
|
||||||
|
{2000000, sdrplay_api_BW_1_536},
|
||||||
|
{1000000, sdrplay_api_BW_0_600},
|
||||||
|
{500000, sdrplay_api_BW_0_600},
|
||||||
|
{250000, sdrplay_api_BW_0_300},
|
||||||
|
{125000, sdrplay_api_BW_0_200},
|
||||||
|
{62500, sdrplay_api_BW_0_200}
|
||||||
|
};
|
||||||
|
std::unordered_map<int, sdrplay_api_If_kHzT> ifModeMap = {
|
||||||
|
{2000000, sdrplay_api_IF_1_620},
|
||||||
|
{1000000, sdrplay_api_IF_1_620},
|
||||||
|
{500000, sdrplay_api_IF_1_620},
|
||||||
|
{250000, sdrplay_api_IF_1_620},
|
||||||
|
{125000, sdrplay_api_IF_1_620},
|
||||||
|
{62500, sdrplay_api_IF_1_620}
|
||||||
|
};
|
||||||
nDecimation = decimationMap[fs];
|
nDecimation = decimationMap[fs];
|
||||||
|
bwType = ifBandwidthMap[fs];
|
||||||
|
ifType = ifModeMap[fs];
|
||||||
usb_bulk_fg = false;
|
usb_bulk_fg = false;
|
||||||
capture_fg = saveIq;
|
capture_fg = saveIq;
|
||||||
saveIqFileLocal = &saveIqFile;
|
saveIqFileLocal = &saveIqFile;
|
||||||
|
@ -381,25 +399,8 @@ void RspDuo::set_device_parameters()
|
||||||
// set decimation and IF frequency and analog bandwidth
|
// set decimation and IF frequency and analog bandwidth
|
||||||
chParams->ctrlParams.decimation.enable = 1;
|
chParams->ctrlParams.decimation.enable = 1;
|
||||||
chParams->ctrlParams.decimation.decimationFactor = nDecimation;
|
chParams->ctrlParams.decimation.decimationFactor = nDecimation;
|
||||||
chParams->tunerParams.ifType = sdrplay_api_IF_1_620;
|
chParams->tunerParams.ifType = ifType;
|
||||||
chParams->tunerParams.bwType = sdrplay_api_BW_1_536;
|
chParams->tunerParams.bwType = bwType;
|
||||||
|
|
||||||
if (nDecimation == 4)
|
|
||||||
{
|
|
||||||
// 2 MSa/s / 4 = 500 kHz
|
|
||||||
chParams->tunerParams.bwType = sdrplay_api_BW_0_600;
|
|
||||||
}
|
|
||||||
else if (nDecimation == 8)
|
|
||||||
{
|
|
||||||
// 2 MSa/s / 8 = 250 kHz
|
|
||||||
chParams->tunerParams.bwType = sdrplay_api_BW_0_300;
|
|
||||||
}
|
|
||||||
else if (nDecimation == 16 || nDecimation == 32)
|
|
||||||
{
|
|
||||||
// 2 MSa/s / 16 = 125 kHz
|
|
||||||
// 2 MSa/s / 32 = 62.5 kHz
|
|
||||||
chParams->tunerParams.bwType = sdrplay_api_BW_0_200;
|
|
||||||
}
|
|
||||||
|
|
||||||
// configure notch filters
|
// configure notch filters
|
||||||
chParams->rspDuoTunerParams.rfNotchEnable = rf_notch_fg;
|
chParams->rspDuoTunerParams.rfNotchEnable = rf_notch_fg;
|
||||||
|
|
|
@ -47,6 +47,10 @@ private:
|
||||||
bool dab_notch_fg;
|
bool dab_notch_fg;
|
||||||
/// @brief USB bulk transfer mode.
|
/// @brief USB bulk transfer mode.
|
||||||
bool usb_bulk_fg;
|
bool usb_bulk_fg;
|
||||||
|
/// @brief SDRplay IF bandwidth enum.
|
||||||
|
sdrplay_api_Bw_MHzT bwType;
|
||||||
|
/// @brief SDRplay IF mode enum.
|
||||||
|
sdrplay_api_If_kHzT ifType;
|
||||||
|
|
||||||
/// @brief Maximum frequency (Hz).
|
/// @brief Maximum frequency (Hz).
|
||||||
static const double MAX_FREQUENCY_NR;
|
static const double MAX_FREQUENCY_NR;
|
||||||
|
|
Loading…
Reference in a new issue