[an error occurred while processing this directive] [an error occurred while processing this directive]
Раз первый бит данных всегда 1, то он тоже входит в синхру.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено kons 14 февраля 2002 г. 11:58
В ответ на: Ответ: да, синхра мерзкая отправлено Maxxx 13 февраля 2002 г. 19:32

Это уже чуть лучше. В аналогичной ситуации (чужая мерзкая синхра, но слегка получше Вашей) удалось зацепиться с помощью прямой синхронизации: в длинный сдвиговый регистр с частотой 8*Fbit засасываются отсчеты, далее это XORится с синхропоследовательностью,
далее на каждом такте путем суммирования единичек вычисляется корреляция (на такой синхре эффективен рекурсивный алгоритм, поэтому жутких расходов времени можно будет избежать).Момент прохождения синхров определяется по 2 критериям:
- корреляция прошла свой пик
- значение корреляции в пике выше порогового
Ну и дальше, если посылка короткая и частота стабильная, можно уже не подстраивать фазу битовой синхронизации, а накапливать по 8 отсчетов (в моем примере), суммировать в накопленном байте единички и принимать решения: N>4 - принят "1",N<4 - принят "0", N==4 - ошибка.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru