ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
22 апреля
530952 Топик полностью
Adept (15.07.2014 19:50, просмотров: 116) ответил fk0 на Программный FSK -- чрезвычайно быстрая штука. Тригонометрии вообще не нужно (это для QPSK -- синус из таблицы...), из математики в основном 16x16=32 умножение с накоплением: пара фильтров (на частоту "0" и "1") и компаратор их выхода, какой-то
ХЗ, я на МК на асме делал, - там всё действительно просто летало, (по моему 70 байт кода и одна ячейка памяти + аппаратный таймер + компаратор + UART), а вот приложение писал под андроид другой чел, так там всё было некисло. была и тригонометрия (нетабличная) и "плавучка", в общем на самых говённый трубах еле-еле 300 бод, про обычные телефоны речи вообще не шло (хотя крутилось всё на JAVA, и теоретически как бы ничего не мешало замутить и JAVA-приложение для обычных телефонов, но увы, ресурсов жрало прилично). механизм битовой синхронзации был UART в чистом виде :) , так было проще построить программно-аппаратный кодек на МК. Средствами ATmega88 легко детектировал FSK амплитудой 30-50мВ, с несущими 1 и 2 кГц. Формирование. естественно, вообще без проблем. Была байтовая буферизация (средствами штатного UARTа) В смартфонекрутился какой-то модемный FSK-код. Математика там была неслабая (с разложением в Фурье, и анализом спектров). Алгоритм "поднимал" сигнал, практически с уровня шумов. Программер, кстати совсем не криворукий, я бы даже сказал, что намного выше среднего, в общем-то даже гуру :) Вот как-то так. Кстати, ссылочку на си-код быстрого FSK кодека не скините, я бы программеру переслал на "посмотреть" :)
...делать нужно так, как нужно. А как ненужно - делать не нужно (С) Винни-Пух :)