Ардуино bluetooth передача звука

Беспроводные наушники

В погоней за уменьшением количества проводов многие производители переходят на wireless-технологии. Заряжать телефон и слушать музыку, не подключаясь к устройству с помощью кабелей, стало привычным делом. Вот и мы научимся передавать звук по радио и прокачаем старые наушники nrf-модулями.

Что это?

Для передачи звука используeм пару радиомодулей nRF24L01+ . Передатчик основан на Arduino Uno, а приемник — для компактности — сделан на Breadboard c Arduino Nano и аккумулятором.

Видеообзор

Что нам понадобится?

Как собрать?

Для питания nRF24L01 нужно использовать отдельный источник на 3,3 В, т.к. встроенного в Ардуино регулятора, для этих целей будет не достаточно. Соберем его на тех же Breadboard -ах, что и основные схемы.

Сборка передатчика

Соберем передатчик на Breadboard -е по схеме ниже.

Сборка приемника

Приемник тоже соберем на Breadboard -е но дополнительно оборудуем его павербанком для мобильности.

Прошивка

Для работы устройства необходимо будет скачать и установить библиотеки RF24 и RF24V.

Прошейте передатчик кодом ниже.

// подключим необходимые библиотеки #include #include #include // создаем объект передатчика и указываем пины подключения RF24 radio(7,8); RF24V Sound(radio,0); void setup() { // инициализируем работу передатчика radio.begin(); // устанавливаем канал связи radio.setChannel(0x4b); // выбираем скорость передачи radio.setDataRate(RF24_250KBPS); // инициализируем передачу звука Sound.begin(); // запускаем передачу звука Sound.transfer(); } void loop() { }

В приемник загрузите этот код.

// подключим необходимые библиотеки #include #include #include // создаем объект приемника и указываем пины подключения RF24 radio(7,8); RF24V Sound(radio,0); void setup() { // инициализируем работу приёмника radio.begin(); // устанавливаем канал связи radio.setChannel(0x4b); // выбираем скорость приёма radio.setDataRate(RF24_250KBPS); // инициализируем приём звука Sound.begin(); // запускаем приём звука Sound.reader(); } void loop() { }

Что дальше?

Чтобы сделать размеры устройства еще меньше, соберите регулятор на Troyka Perfboard или и вовсе распаяйте всё устройство на Proto Shield.

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution-Noncommercial-Share Alike 4.0 International

Производные работы должны содержать ссылку на http://wiki.amperka.ru, как на первоисточник, непосредственно перед содержимым работы.
Вики работает на суперском движке DokuWiki.

Инструменты страницы

Источник

Arduino.ru

Здравствуйте! Подскажите, пожалуйста, с выбором компонентов. Есть задача передать звук с аудиовыхода телевизора на Bluetooth наушники. Если с самой Ардуиной и модулем Bluetooth понятно, то какой модуль нужен для ввода звука на плату?

Вот вам решение задачи сразу и без ардуины.

Jeka_M аватар

Если с самой Ардуиной и модулем Bluetooth понятно, то какой модуль нужен для ввода звука на плату?

Никакой, мощности ардуины не хватит для работы со звуком приемлемого качества.

andriano аватар

Если с самой Ардуиной и модулем Bluetooth понятно, то какой модуль нужен для ввода звука на плату?

Никакой, мощности ардуины не хватит для работы со звуком приемлемого качества.

Т.е. 48kHz/74dB для Вас качество неприемлемое?

Т.е. ардуинка не потянет цифровку звука с такой скоростью, примерная скорость при использовании встроенного ацп — 9кгц, при использовании внешнего ацп — проще взять специализированые МК а не друину..

andriano аватар

Т.е. ардуинка не потянет цифровку звука с такой скоростью, примерная скорость при использовании встроенного ацп — 9кгц, при использовании внешнего ацп — проще взять специализированые МК а не друину..

У меня — тянет именно с такой.

Это я о том что ардуина, в меру своих ограниченых программно\аппаратных возможностей, просто не справится с оцифровкой звука с достаточной частотой, его кодированием, и передачей по UART.

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

Т.е. 48kHz/74dB для Вас качество неприемлемое?

Мне немного кажется что тут вы очень лукавите или подменяете понятия, сам от темы обработки звука я далек, но даже если взять на веру что 48кгц вы получите, обьясните мне как вы получаете на ардуинке диапазон в 74дб? =)

не забудьте, звук нам надо отцифровать, а не воспроизвести =)

andriano аватар

Это я о том что ардуина, в меру своих ограниченых программно\аппаратных возможностей, просто не справится с оцифровкой звука с достаточной частотой, его кодированием, и передачей по UART.

Но узкое место здесь не Ардуина, а UART (о котором, к слову, в этой теме не было ни слова).

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

Только идиот будет пытаться работать со звуком на Леонардо или Меге. Единственный продходящий для обработки звука контроллер — это Due. Без вариантов.

andriano аватар

. обьясните мне как вы получаете на ардуинке диапазон в 74дб? =)

не забудьте, звук нам надо отцифровать, а не воспроизвести =)

Во-первых, лично я звук не оцифровываю, а синтезирую. Строго говоря, об оцифровке посредством именно Ардуины речи в теме не было — это Вы сами придумали. Изначальный вопрос подразумевал возможность применения внешнего устройства для ввода звука.

74 дБ — величина расчетная по известной формуле 2+6N. ПОмерять мне такое нечем.

Для передачи с TV еще немаловажно минимизировать задержки в канале. Ну и всякие там Apt-X, наверное, не помешают.

Но узкое место здесь не Ардуина, а UART (о котором, к слову, в этой теме не было ни слова).

Опять лукавите, или совсем далеки от тематики, 192кбит\с — для уарта вполне себе не высокая скорость.

Только идиот будет пытаться работать со звуком на Леонардо или Меге. Единственный продходящий для обработки звука контроллер — это Due. Без вариантов.

Т.е. ардуинка не потянет цифровку звука с такой скоростью, примерная скорость при использовании встроенного ацп — 9кгц, при использовании внешнего ацп — проще взять специализированые МК а не друину..

У меня — тянет именно с такой.

Собсно вот вам ответ о чем же я, у вас ардуинка тянет оцифровку звука именно с такими параметрами =)

andriano аватар

Опять лукавите, или совсем далеки от тематики, 192кбит\с — для уарта вполне себе не высокая скорость.

Максимальная скорость UART (стандартного) 115200.

Но даже если взять 192 кбит/с. При пересчете в кбайты это будет 19.2 (не удивляйтесь, на байт данных приходится 2-3 служебных бита, которые учитываются в скорости, в стандартном протокоде Ардуино — конкретно 2 бита). При честоте дискретизации 48 кГц, получаем, что на один отсчет приходится 3.2 бита.

Да. трехбитный звук — совсем не предаел желаний.

Не силен в тематике кто есть кто, если Due это 32 битник, то именно о нем речь я и вел.

Мы с вами наверно общаемся на разных языках, но давайте по порядку

1) Что есть стандартный? 384к? или больше? ардуинку можно разогнать до мегабита практически, но даже без этого, почитайте что есть SBC и как именно и насколько он сжимает звук, а ведь именно этот кодек является стандартом синего зуба.

Дальше, зачем вы пересчитываете на байты? у нас битность звукового потока стала измерятся в байтах?

Идем дальше, вы стандарты вообще хоть какие либо из приведенных вами знаете? 48khz ? правда? а ничего что стандартом опять таки, тогоже синезуба максимум при кодеке SBC немного меньше? если вы начнете сьезжать на иной кодек то опять облом, ибо там 24кгц

Due так Due, почему то думал леонарда это 32х битник =)

Источник

Читайте также:  Переходник bt 450 aux car блютуз
Оцените статью
Adblock
detector