Беспроводные наушники
В погоней за уменьшением количества проводов многие производители переходят на wireless-технологии. Заряжать телефон и слушать музыку, не подключаясь к устройству с помощью кабелей, стало привычным делом. Вот и мы научимся передавать звук по радио и прокачаем старые наушники nrf-модулями.
Что это?
Для передачи звука используeм пару радиомодулей nRF24L01+
. Передатчик основан на Arduino Uno, а приемник — для компактности — сделан на Breadboard
c Arduino Nano и аккумулятором.
Видеообзор
Что нам понадобится?
- Разъём аудиовыход
- Разъём аудиовход
- Конденсаторы электролитические 47 мкФ
- Конденсаторы Электролитические 220 мкФ
Как собрать?
Для питания nRF24L01 нужно использовать отдельный источник на 3,3 В, т.к. встроенного в Ардуино регулятора, для этих целей будет не достаточно. Соберем его на тех же Breadboard
-ах, что и основные схемы.
Сборка передатчика
Соберем передатчик на Breadboard
-е по схеме ниже.
Сборка приемника
Приемник тоже соберем на Breadboard
-е но дополнительно оборудуем его павербанком для мобильности.
Прошивка
Для работы устройства необходимо будет скачать и установить библиотеки RF24 и RF24V.
Прошейте передатчик кодом ниже.
- Transmitter.ino
// подключим необходимые библиотеки #include <RF24.h> #include <SPI.h> #include <RF24V.h> // создаем объект передатчика и указываем пины подключения 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() { }
В приемник загрузите этот код.
- Receiver.ino
// подключим необходимые библиотеки #include <RF24.h> #include <SPI.h> #include <RF24V.h> // создаем объект приемника и указываем пины подключения 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.