1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2025-08-01 13:32:33 -04:00

Corrected RDS demod clock phase calculation

This commit is contained in:
Edouard Griffiths 2015-12-10 14:15:44 +01:00
parent 4ecc0f18bb
commit ea0640c844
2 changed files with 4 additions and 4 deletions

View File

@ -43,12 +43,12 @@ RDSDemod::~RDSDemod()
{ {
} }
void RDSDemod::process(Real rdsSample, Real pilotSample) void RDSDemod::process(Real rdsSample, Real pilotPhaseSample)
{ {
m_rdsBB = filter_lp_2400_iq(rdsSample, 0); // working on real part only m_rdsBB = filter_lp_2400_iq(rdsSample, 0); // working on real part only
// 1187.5 Hz clock // 1187.5 Hz clock from 19 kHz pilot
m_rdsClockPhase = (pilotSample / 48.0) + m_rdsClockOffset; m_rdsClockPhase = (pilotPhaseSample / 16.0) + m_rdsClockOffset;
m_rdsClockLO = (fmod(m_rdsClockPhase, 2 * M_PI) < M_PI ? 1 : -1); m_rdsClockLO = (fmod(m_rdsClockPhase, 2 * M_PI) < M_PI ? 1 : -1);
// Clock phase recovery // Clock phase recovery

View File

@ -27,7 +27,7 @@ public:
RDSDemod(); RDSDemod();
~RDSDemod(); ~RDSDemod();
void process(Real rdsSample, Real pilotSample); void process(Real rdsSample, Real pilotPhaseSample);
protected: protected:
Real filter_lp_2400_iq(Real in, int iqIndex); Real filter_lp_2400_iq(Real in, int iqIndex);