From 000da1889f6e43dbadd7110693a6156338a1ca73 Mon Sep 17 00:00:00 2001 From: Jonathan Naylor Date: Wed, 30 Jan 2019 11:18:16 +0000 Subject: [PATCH] Simplify the POCSAG calibration code. --- CalPOCSAG.cpp | 32 ++++++++------------------------ CalPOCSAG.h | 1 - 2 files changed, 8 insertions(+), 25 deletions(-) diff --git a/CalPOCSAG.cpp b/CalPOCSAG.cpp index 0bd753d..0234a50 100644 --- a/CalPOCSAG.cpp +++ b/CalPOCSAG.cpp @@ -29,8 +29,7 @@ const q15_t sine600Hz[] = { }; CCalPOCSAG::CCalPOCSAG() : -m_state(POCSAGCAL_IDLE), -m_audioSeq(0U) +m_state(POCSAGCAL_IDLE) { } @@ -40,22 +39,14 @@ void CCalPOCSAG::process() return; uint16_t space = io.getSpace(); - if (space == 0U) + if (space <= 205U) return; - q15_t samples[200U]; - uint16_t length = 0U; - - if (space > 200U) - space = 200U; - - for (uint16_t i = 0U; i < space; i++, length++) { - samples[i] = sine600Hz[m_audioSeq++]; - if (m_audioSeq >= 40U) - m_audioSeq = 0U; - } - - io.write(STATE_POCSAG, samples, length); + io.write(STATE_POCSAG, sine600Hz, 40U); + io.write(STATE_POCSAG, sine600Hz, 40U); + io.write(STATE_POCSAG, sine600Hz, 40U); + io.write(STATE_POCSAG, sine600Hz, 40U); + io.write(STATE_POCSAG, sine600Hz, 40U); } uint8_t CCalPOCSAG::write(const uint8_t* data, uint8_t length) @@ -63,14 +54,7 @@ uint8_t CCalPOCSAG::write(const uint8_t* data, uint8_t length) if (length != 1U) return 4U; - bool on = data[0U] == 1U; - - if (on && m_state == POCSAGCAL_IDLE) { - m_state = POCSAGCAL_TX; - m_audioSeq = 0U; - } else if (!on && m_state == POCSAGCAL_TX) { - m_state = POCSAGCAL_IDLE; - } + m_state = data[0U] == 1U ? POCSAGCAL_TX : POCSAGCAL_IDLE; return 0U; } diff --git a/CalPOCSAG.h b/CalPOCSAG.h index 2e60a72..291e360 100644 --- a/CalPOCSAG.h +++ b/CalPOCSAG.h @@ -36,7 +36,6 @@ public: private: POCSAGCAL m_state; - uint8_t m_audioSeq; }; #endif