В погоней за уменьшением количества проводов многие производители переходят на wireless-технологии. Заряжать телефон и слушать музыку, не подключаясь к устройству с помощью кабелей, стало привычным делом. Вот и мы научимся передавать звук по радио и прокачаем старые наушники nrf-модулями.
Для передачи звука используeм пару радиомодулей nRF24L01+
. Передатчик основан на Arduino Uno, а приемник — для компактности — сделан на Breadboard
c Arduino Nano и аккумулятором.
Для питания nRF24L01 нужно использовать отдельный источник на 3,3 В, т.к. встроенного в Ардуино регулятора, для этих целей будет не достаточно. Соберем его на тех же Breadboard
-ах, что и основные схемы.
Соберем передатчик на Breadboard
-е по схеме ниже.
Приемник тоже соберем на Breadboard
-е но дополнительно оборудуем его павербанком для мобильности.
Для работы устройства необходимо будет скачать и установить библиотеки RF24 и RF24V.
Прошейте передатчик кодом ниже.
// подключим необходимые библиотеки #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() { }
В приемник загрузите этот код.
// подключим необходимые библиотеки #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.