- reduced spurious detection of preamble
git-svn-id: http://moon:8086/svn/software/trunk/projects/GnuRadio@398 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
@@ -81,6 +81,7 @@ int preamble_sync_impl::general_work (int noutput_items, gr_vector_int &ninput_i
|
|||||||
{
|
{
|
||||||
m_state = PreambleSlow;
|
m_state = PreambleSlow;
|
||||||
m_wordCount = 0;
|
m_wordCount = 0;
|
||||||
|
m_dataCount = 0;
|
||||||
fprintf(stderr, "Reset\n");
|
fprintf(stderr, "Reset\n");
|
||||||
}
|
}
|
||||||
continue;
|
continue;
|
||||||
@@ -106,10 +107,20 @@ int preamble_sync_impl::general_work (int noutput_items, gr_vector_int &ninput_i
|
|||||||
{
|
{
|
||||||
case PreambleSlow:
|
case PreambleSlow:
|
||||||
if ((m_word & 0xFF) == 0xCC)
|
if ((m_word & 0xFF) == 0xCC)
|
||||||
|
{
|
||||||
|
m_wordSize = 8;
|
||||||
|
m_dataCount++;
|
||||||
|
if (m_dataCount == 8)
|
||||||
{
|
{
|
||||||
m_wordSize = 1;
|
m_wordSize = 1;
|
||||||
m_stateNext = SyncSlow;
|
m_stateNext = SyncSlow;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_dataCount = 0;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SyncSlow:
|
case SyncSlow:
|
||||||
if ((m_word & 0xFF) == 0x3F)
|
if ((m_word & 0xFF) == 0x3F)
|
||||||
@@ -131,11 +142,20 @@ int preamble_sync_impl::general_work (int noutput_items, gr_vector_int &ninput_i
|
|||||||
break;
|
break;
|
||||||
case PreambleFast:
|
case PreambleFast:
|
||||||
if ((m_word & 0xFF) == 0xAA)
|
if ((m_word & 0xFF) == 0xAA)
|
||||||
|
{
|
||||||
|
m_wordSize = 8;
|
||||||
|
m_dataCount++;
|
||||||
|
if (m_dataCount == 32)
|
||||||
{
|
{
|
||||||
m_wordSize = 8;
|
m_wordSize = 8;
|
||||||
m_dataCount = 0;
|
m_dataCount = 0;
|
||||||
m_stateNext = SyncFast;
|
m_stateNext = SyncFast;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_dataCount = 0;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SyncFast:
|
case SyncFast:
|
||||||
if ((m_word & 0xFF) == fastSyncWord[m_dataCount])
|
if ((m_word & 0xFF) == fastSyncWord[m_dataCount])
|
||||||
|
|||||||
Reference in New Issue
Block a user