Evgeny_CDАрхитектор (19.05.2013 13:54, просмотров: 103) ответил Ксения на Это у вас азбука Морзе получилась :), точка - 0, тире - 1. Но проблемы возникнут те же - деление всей этой каши на байты. Ибо иначе бит пропустили и синхронизации как небывало.
Фишка состоит в том, что пропустить бит невозможно. Его можно только ошибочно принять. За счет сользящего среднего мы устранили ВЧ шумы. Значит, у нас осталась только вероятностью НЧ шумов, который приведут к тому, что у нас "канал залипнет" - т.е. мы ждем фронта, а его все нет.
Тут возможно несколько вариантов.
1. Фиксированное принудительно приянтие решения. Нет импульса - значит 1. Но если мы ошиблись, то внесем ошибку в следующий бит.
2. Адаптивное принятие решения.
Если у нас нет импульсов несколько интервалов подряд - нам оторвали веревку :). Тоже, кстати, очень полезная функция.
Пусть у нас не было импульса. Мы запоминаем это и считаем от последнего валидного импульса. И запускам в работу 2 гипотезы: что у нас прое.. 0 или 1.
Далее смотрим на на следующий пришедший импульс. И смотрим, какая из гипотез ближе к истине. Эдакий Витерби-лайт.
Да, соотношение интервалов надо считать и моделировать.