Показать сообщение отдельно
  #1  
Старый 23.10.2017, 16:12
-=#PupaJr#=- -=#PupaJr#=- вне форума
Новичок
 
Регистрация: 17.08.2010
Сообщения: 68
Репутация: 518
По умолчанию Модем на звуковых картах - данные по звуку

Доброго всем!!
Необходимо передавать пакет данных через звуковуху - типо модема.
Имеем массив char/byte где записаны числа (0-255), длина массива 10-16 байт а то и короче - 4 байта. достаточно МОНО сигнала.
Нашёл здесь в исходниках пример генератора - он делает синусоиду/тишину прямоугольник - мне нужен прямоугольник, ну и синус в принципе наверное тоже годится. Видел тему похожую - но вопрос не решился у человека. я так понял.
Сам пока не пробывал. Идея - в массив генератора закидываю периоды частоты - частота для 0 скажем 1000Гц, для 1 2000Гц - через телефонную линию спокойно пролезет. Разбиваю байты массива на биты, анализирую состояние битов и в соответствии кладу в виртуальный массив WAV файла нужную частоту 1000 или 2000Гц.
Таким образом получаю частотную модуляцию.
С передачей понятно, а как принять такой сигнал? Использовать БПФ - не получится, малая выборка - всего 1 период на бит.
Сделать программный компаратор - ловить переходы через "ноль" и считать время между этими "нулями", малое время - 1/2000 - это пришла 1, длинный период - 1/1000 это ноль, если 1/1500 то сбой фазы на половину. Шумы обрезать программно.
Нормальный алгоритм? может у кого сделано?
Ответить с цитированием