Привет всем! Подскажите, как можно перевести аудио сигнал в шим, хочу передавать аудио через nRF24L01 модуль спасибо
Передать ШИМ через nRF24L01? А это возможно? Насколько я себе представляю, через nRF24L01 можно только потоки байт передавать небольшими пакетами. Проще передавать 10-битные отсчеты, считанные при помощи analogRead, как двухбайтовые посылки (или набор двухбайтовых посылок. составляющий пакет для передачи).
В аналоговой схематике не силен, но кажется что PWM получится если тупо на один вход компаратора подавать входной сигнал через ФНЧ, а на другой пилу. Вопрос качества звука упирается в то, какую частоту можно пропихнуть в радиомодуль.
В основном это КПД и дальность передачи а так же размер антен, да и аналог как то просто, хочу че посложнее
хммм, да вроде в курсе, мне ведь не музыку передавать, голос, чтобы более менее было разборчиво и не более )
Для передачи более-менее разборчивого голоса требуется не менее 4 бит на отсчет с частотой не менее 8000 отсчетов в секунду (это АДМ, более медленные способы кодирования ардуина, полагаю, не потянет, разве что шилд специальный найдется с соответствующим кодером). Можно, в принципе, работать и одним битом (на заре компьютеризации воспроизводили речь компьютерной пищалкой, подавая на нее один бит за отсчет: 1, если отсчет линейной ИКМ положительный, 0, если отрицательный), но тогда разборчивость будет крайне низкой, т.е. разобрать что-то иногда можно, но далеко не всегда. В теории минимальное время переключения ШИМ позволяет передать что-то, с такой скоростью ("сеанс" ШИМа с заданным уровнем от 0 до 255 кодирует 8 бит на отсчет). Но есть несколько проблем. 1. Принимающая сторона должна уметь "расшифровывать" ШИМ буквально по нескольким импульсам. 2. Чтобы добиться достаточных скоростей, придется перейти с digitalWrite/analogWrite на прямую работу с портами. 3. ШИМ нужно "разогнать", уменьшив время между импульсами относительно стандартного (я мог ошибиться, но вроде то, что я видел на осциллографе с ШИМового пина, явно недостаточно для передачи со скоростями в несколько тысяч отсчетов в секунду). 4. На задачи кроме управления ШИМом времени у микроконтроллера просто не останется.
Итак, теоретически в ШИМ вполне можно уложить разборчивую речь и даже передать ее по проводам. Теперь про радиопередачу. Теоретически в идеальных условиях (отсутствие шумов на частоте радиопередачи) без использования хитрых видов модуляции и помехоустойчивого кодирования (применение которых делает передачу ШИМ не бессмысленной, а абсолютно бессмысленной) можно пропихнуть до мегабита (в теории и до 200 мегабит, но это совсем уж теория). А мегабит - это всего 4 тысячи отсчетов ШИМ в секунду (грубо говоря, при минимальном ненулевом ШИМ 1 единичный бит на 255 нулевых). Учитывая, что ШИМ еще надо распознать, что между разными значениями ШИМ наверняка будет переходный процесс, то максимум таким образом получится протолкнуть около тысячи 8 битных отсчетов в секунду. Для видов кодирования, доступных непосредственно на ардуино без модулей (которые еще найти надо. если они вообще есть), явно маловато будет. В реальных же условиях скорость радиоканала будет измеряться килобитами, что кардинально ухудшит ситуацию. Так что аудио через ШИМ через радио - это утопия.
Не, это не утопия, это идиотизм и экстремально нерациональное использование пропускной способности радиоканала. Максимальная частота сигнала ограничена шириной полосы. Фронты от переходов "0"-"1" в несколько наносекунд либо просто размажутся полосовым фильтром и всей АЧХ радиотракта до соответствующих 150kHz~1MHz (полоса пропускания модулей 315/433MHz), либо еще нагадят в эфир за пределами разрешенного диапазона, если по факту полоса окажется шире. В итоге, учитывая частоту самого ШИМ сигнала, на тот конец вместо красивых цифровых прямоугольников приедет вагон звенящих синусоид. Передавать таким способом данные через UART на небольших скоростях это еще нормально, там деваться некуда (сигнал, конечно же, нужно отфильтровать по частоте, хотя с этим и сам модуль справится м\б). Но вот искусственно увеличивать потребную полосу перед передачей это совсем уже какая-то ересь. Сигнал всегда наоборот пытаются ужать и закодировать так, чтобы он как можно меньшую полосу отъедал при сохранении качества.
Да, звук можно передать ШИМом. Да, через этот модуль даже что-то пролезет. Но, скажите, зачем Вы хотите передавать звук, занимая монофоническим сигналом посредственного качества полосу как у телевизионного сигнала? Да еще передавать это безобразие на 2 км? Эфир это не чудесная субстанция, которая волшебным образом передает данные, а сильно загруженное, зашумленное и тесное пространство. Начните с теории, в то потом в подъезде появляются вот такие таблички:
не не, может я не так выразился, но я не хочу перебивать телевизоры и тд, я просто хотел сделать 2 радиостанции (рации) и все ). почему не хочу делать на аналоге - не интересно, вот хочу цифровую по возможности шифрованую передачу и все ))) да и растояния не большие, надо то 100 - 150 метров уверенного приема
ШИМ-то зачем? Он существенно увеличивает потребности к ширине канала и отсутствию помех. Да еще усложняет обработку сигнала (тем более, если потребуется шифрование).