Я вот сейчас пробую, но не могу понять один момент. При генерации синусоиды f0 = 1200 и f1 = 2200 Гц, при символьной скорости 1200 бод, при частоте дискретизации 44100 Гц синусоида не умещается, то есть частота дискретизации не покрывает даже одного полного периода функции. Как тогда генерируется сигнал?
Если кто знает, как правильно, подскажите.
Единственное решение которое с ходу приходит на ум - уменьшить скорость передачи данных (при этом увеличив длительность символа), но ведь как то и на 1200 генерируется (у других людей).
ну... обычно буфер используется. Все суется в буфер, а там уже оно само знает как и когда вычитывать. 1200 бод маловато как-то. Что такое программный модем?
Ну это когда мы программу кормим потоком байтов, а она выплёвывает аудиопоток модулированного сигнала на выход динамика. Со входа микрофона же, она должна ловить аудиопоток и преобразовывать в байтики
ну, юарт, настоящий, может в таких рамках работать 110, 150, 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600 Это ты такое ограничение выставил?
нуу, то есть да, ты должен все подогнать, идеально. И "кормешка" байтами должна происходить тоже, так, как нужно, то есть в логике должен быть учтен буфер
Там не в uart дело, вот тут подробнее но в железе https://notblackmagic.com/bitsnpieces/afsk/
речь про 1200 и 2200 герц, не 44100. Тут фокусы ранней телефонии, а не качество уровня cd
Обсуждают сегодня