From 580ba0b536a2b6aede5c2fd4afa161b34355de8e Mon Sep 17 00:00:00 2001 From: phl0 Date: Wed, 23 Jan 2019 14:58:01 +0100 Subject: [PATCH] Add synthetic 600Hz sine wave and some more POCSAGCal states --- CalPOCSAG.cpp | 6 ++++++ Globals.h | 1 + SerialPort.cpp | 4 ++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CalPOCSAG.cpp b/CalPOCSAG.cpp index a449232..9472bdd 100644 --- a/CalPOCSAG.cpp +++ b/CalPOCSAG.cpp @@ -21,6 +21,12 @@ #include "CalPOCSAG.h" // POCSAG 600 Hz Test Pattern +const q15_t sine600Hz[] = { + 0, 5125, 10125, 14875, 19259, 23169, 26509, 29195, 31163, 32363, + 32767, 32363, 31163, 29195, 26509, 23169, 19259, 14875, 10125, 5125, + 0, -5126, -10126, -14876, -19260, -23170, -26510, -29196, -31164, -32364, + -32767, -32364, -31164, -29196, -26510, -23170, -19260, -14876, -10126, -5126, + }; CCalPOCSAG::CCalPOCSAG() : m_transmit(false), diff --git a/Globals.h b/Globals.h index b52074f..149cb25 100644 --- a/Globals.h +++ b/Globals.h @@ -149,6 +149,7 @@ extern CCalDStarTX calDStarTX; extern CCalDMR calDMR; extern CCalP25 calP25; extern CCalNXDN calNXDN; +extern CCalPOCSAG calPOCSAG; extern CCalRSSI calRSSI; extern CCWIdTX cwIdTX; diff --git a/SerialPort.cpp b/SerialPort.cpp index f12e6bb..1cc0e45 100644 --- a/SerialPort.cpp +++ b/SerialPort.cpp @@ -280,7 +280,7 @@ uint8_t CSerialPort::setConfig(const uint8_t* data, uint8_t length) MMDVM_STATE modemState = MMDVM_STATE(data[3U]); - if (modemState != STATE_IDLE && modemState != STATE_DSTAR && modemState != STATE_DMR && modemState != STATE_YSF && modemState != STATE_P25 && modemState != STATE_NXDN && modemState != STATE_POCSAG && modemState != STATE_DSTARCAL && modemState != STATE_DMRCAL && modemState != STATE_RSSICAL && modemState != STATE_LFCAL && modemState != STATE_DMRCAL1K && modemState != STATE_P25CAL1K && modemState != STATE_DMRDMO1K && modemState != STATE_NXDNCAL1K) + if (modemState != STATE_IDLE && modemState != STATE_DSTAR && modemState != STATE_DMR && modemState != STATE_YSF && modemState != STATE_P25 && modemState != STATE_NXDN && modemState != STATE_POCSAG && modemState != STATE_DSTARCAL && modemState != STATE_DMRCAL && modemState != STATE_RSSICAL && modemState != STATE_LFCAL && modemState != STATE_DMRCAL1K && modemState != STATE_P25CAL1K && modemState != STATE_DMRDMO1K && modemState != STATE_NXDNCAL1K && modemState != STATE_POCSAGCAL) return 4U; if (modemState == STATE_DSTAR && !dstarEnable) return 4U; @@ -360,7 +360,7 @@ uint8_t CSerialPort::setMode(const uint8_t* data, uint8_t length) if (modemState == m_modemState) return 0U; - if (modemState != STATE_IDLE && modemState != STATE_DSTAR && modemState != STATE_DMR && modemState != STATE_YSF && modemState != STATE_P25 && modemState != STATE_NXDN && modemState != STATE_POCSAG && modemState != STATE_DSTARCAL && modemState != STATE_DMRCAL && modemState != STATE_RSSICAL && modemState != STATE_LFCAL && modemState != STATE_DMRCAL1K && modemState != STATE_P25CAL1K && modemState != STATE_DMRDMO1K && modemState != STATE_NXDNCAL1K) + if (modemState != STATE_IDLE && modemState != STATE_DSTAR && modemState != STATE_DMR && modemState != STATE_YSF && modemState != STATE_P25 && modemState != STATE_NXDN && modemState != STATE_POCSAG && modemState != STATE_DSTARCAL && modemState != STATE_DMRCAL && modemState != STATE_RSSICAL && modemState != STATE_LFCAL && modemState != STATE_DMRCAL1K && modemState != STATE_P25CAL1K && modemState != STATE_DMRDMO1K && modemState != STATE_NXDNCAL1K && modemState != STATE_POCSAGCAL) return 4U; if (modemState == STATE_DSTAR && !m_dstarEnable) return 4U;