Модулировать и демодулировать двоичные данные в / из аудио - одна или две частоты?

Я собираюсь передать двоичные данные с ПК на соседний смартфон через аудиоканал (предпочтительно с помощью ультразвуковой амплитудной модуляции, например, ~19 кГц). Интересно, что лучше?

  • использовать одну фиксированную частоту для кодирования единиц (высокая амплитуда) и нулей (тишина)
  • используйте две фиксированные частоты, где одна частота передает данные, как указано выше, а вторая инвертируется (тишина как одна) для лучшей помехоустойчивости.

Данные будут включать в себя контрольную сумму, может содержать некоторую кодировку RLL, чтобы избежать слишком длинных однобитовых последовательностей.

Будет ли второй способ действительно повысить надежность передачи данных?

2 ответа

Решение

Обычно для простой схемы модуляции вы используете FSK с двумя подходящими частотами. Вы вряд ли сможете сделать это ультразвуком, хотя, по разным причинам, и ваша скорость передачи данных также будет довольно низкой. Поскольку ваш канал передачи будет шумным, вам определенно потребуется надежная проверка / исправление ошибок.

Обратите внимание, что вышеупомянутые методы широко использовались для пакетной радиосвязи, а также исторически для интерфейсов кассетных магнитных лент на компьютерах до того, как массовое хранилище, такое как гибкие диски и жесткие диски, стало доступным (конец 70-х - начало 80-х), так что, вероятно, существует довольно много материала там об алгоритмах и реализациях для FSK через потребительские аудиоустройства.

Использование 2-х частот (так называемый двоичный FSK) является обычной практикой, так как уровень мощности сигнала остается более постоянным (и, таким образом, менее вероятно, что он будет бороться с AGC или пороговым детектором или будет вызывать шум источника питания).

Другие вопросы по тегам