|
|
|
@ -201,14 +201,10 @@ void P25RX::processBit(bool bit)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (m_state == P25RXS_VOICE) {
|
|
|
|
if (m_state == P25RXS_SYNC) {
|
|
|
|
m_lostCount = MAX_SYNC_FRAMES;
|
|
|
|
// only search for a sync in the right place +-2 bits
|
|
|
|
processVoice(bit);
|
|
|
|
if (m_dataPtr >= (P25_SYNC_LENGTH_BITS - 2U) && m_dataPtr <= (P25_SYNC_LENGTH_BITS + 2U)) {
|
|
|
|
}
|
|
|
|
correlateSync();
|
|
|
|
|
|
|
|
|
|
|
|
if (m_state == P25RXS_DATA) {
|
|
|
|
|
|
|
|
m_lostCount = MAX_SYNC_FRAMES;
|
|
|
|
|
|
|
|
processData(bit);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// since we aren't processing voice or data -- simply wait till we've reached the end pointer
|
|
|
|
// since we aren't processing voice or data -- simply wait till we've reached the end pointer
|
|
|
|
@ -224,6 +220,18 @@ void P25RX::processBit(bool bit)
|
|
|
|
reset();
|
|
|
|
reset();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
if (m_state == P25RXS_VOICE) {
|
|
|
|
|
|
|
|
m_lostCount = MAX_SYNC_FRAMES;
|
|
|
|
|
|
|
|
processVoice(bit);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (m_state == P25RXS_DATA) {
|
|
|
|
|
|
|
|
m_lostCount = MAX_SYNC_FRAMES;
|
|
|
|
|
|
|
|
processData(bit);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// <summary>
|
|
|
|
/// Helper to process LDU P25 bits.
|
|
|
|
/// Helper to process LDU P25 bits.
|
|
|
|
|