Ручка мультимедиа Arduino Nano esp32

Источник:

Сборка:
Распечатайте детали.
Поместите Arduino внутри базы вверх дном так, чтобы порт USB был обращен к отверстию в базе.
Вставьте пять перемычек между гнездами и гнездами в землю, 3,3 В, D2, D3 и D4. Помните, какой провод какой.
Прикрутите крышку к основанию так, чтобы провода выходили из отверстия в крышке. Этот шаг немного сложен. Мне пришлось использовать отвертку, чтобы нажать на Arduino, когда я завинчивал верхнюю часть, чтобы она оставалась на месте.
Подключите провод от земли нано к поворотному энкодеру. Подключите провод от 3,3 В нано к положительному контакту поворотного энкодера. Подключите провод от D2 нано к контакту кнопки энкодера. Подключите провод от контакта D3 нано к контакту DT энкодера. Подключите провод от контакта D4 нано к контакту CLK энкодера.
Поместите поворотный датчик в паз на крышке и приклейте его к крышке горячим способом с помощью держателя. (см. изображение ниже)
Нажмите ручку на поворотный энкодер.
Код 1: ручка громкости
Загрузите библиотеку https://github.com/bonkmachines/ctrl-arduino и установите zip-архив на Arduino. другие библиотеки должны быть предварительно установлены.
Загрузите этот код.

Вращение ручки изменяет громкость, а нажатие на ручку воспроизводит/приостанавливает воспроизведение музыки или видео.

#if ARDUINO_USB_MODE
#warning Этот эскиз следует использовать, когда USB находится в режиме OTG.
недействительная настройка() {}
недействительный цикл() {}
#else
#include «USB.h»
#include «USBHIDConsumerControl.h»
#include

USBHIDConsumerControl ConsumerControl;
// Определить обработчик onTurnleft.
недействительный onTurnleft() {
ConsumerControl.press(CONSUMER_CONTROL_VOLUME_DECREMENT);
ConsumerControl.release();
}
// Определить обработчик onTurnRight.
недействительный onTurnRight() {
ConsumerControl.press(CONSUMER_CONTROL_VOLUME_INCREMENT);
ConsumerControl.release();
}
//------------------------------------------------------------//
//ДРУГИЕ ВАРИАНТЫ УПРАВЛЕНИЯ
//------------------------------------------------------------//
/*
// Управление мощностью
#define CONSUMER_CONTROL_POWER 0x0030
#define CONSUMER_CONTROL_RESET 0x0031
#define CONSUMER_CONTROL_SLEEP 0x0032

// Яркость экрана
#define CONSUMER_CONTROL_BRIGHTNESS_INCREMENT 0x006F
#define CONSUMER_CONTROL_BRIGHTNESS_DECREMENT 0x0070

// Эти способы использования HID работают только на мобильных системах (с батарейным питанием) и
// требуется Windows 8 (сборка 8302 или более поздняя версия).
#define CONSUMER_CONTROL_WIRELESS_RADIO_CONTROLS 0x000C
#define CONSUMER_CONTROL_WIRELESS_RADIO_BUTTONS 0x00C6
#define CONSUMER_CONTROL_WIRELESS_RADIO_LED 0x00C7
#define CONSUMER_CONTROL_WIRELESS_RADIO_SLIDER_SWITCH 0x00C8

// Контроль СМИ
#define CONSUMER_CONTROL_PLAY_PAUSE 0x00CD
#define CONSUMER_CONTROL_SCAN_NEXT 0x00B5
#define CONSUMER_CONTROL_SCAN_PREVIOUS 0x00B6
#define CONSUMER_CONTROL_STOP 0x00B7
#define CONSUMER_CONTROL_VOLUME 0x00E0
#define CONSUMER_CONTROL_MUTE 0x00E2
#define CONSUMER_CONTROL_BASS 0x00E3
#define CONSUMER_CONTROL_TREBLE 0x00E4
#define CONSUMER_CONTROL_BASS_BOOST 0x00E5
#define CONSUMER_CONTROL_VOLUME_INCREMENT 0x00E9
#define CONSUMER_CONTROL_VOLUME_DECREMENT 0x00EA
#define CONSUMER_CONTROL_BASS_INCREMENT 0x0152
#define CONSUMER_CONTROL_BASS_DECREMENT 0x0153
#define CONSUMER_CONTROL_TREBLE_INCREMENT 0x0154
#define CONSUMER_CONTROL_TREBLE_DECREMENT 0x0155

// Панель запуска приложений
#define CONSUMER_CONTROL_CONFIGURATION 0x0183
#define CONSUMER_CONTROL_EMAIL_READER 0x018A
#define CONSUMER_CONTROL_CALCULATOR 0x0192
#define CONSUMER_CONTROL_LOCAL_BROWSER 0x0194

// Для конкретного браузера/проводника
#определить С

11:50
0
Нет комментариев. Ваш будет первым!

Ссылка появится после регистрации

Похожие модели

Корпус для адаптера питания
📁 Корпус для преобразователя питания сПодробнее
Корпус для DC регулируемого источника
📁 Корпус для DC регулируемого источникаПодробнее
Крепление "народного" налобного фонаря
📁 Крепление «народного» налобного фонаряПодробнее
Ручка настройки Yaesu FT-817
📁 Ручка VFO для FT-817/818. ИспользуйтеПодробнее
Модель кнопки для Imax B6
Вам понадобится капля клея, чтобыПодробнее
Антенный изолятор "орешек"
Это стандартный изолятор дляПодробнее
Адаптер питания Yaesu FT-817
📁 Вертикальный адаптер под коннекторыПодробнее
Корпус для ESP32 WROOM
📁 Корпус для ESP32 WROOM 📐 STL 🪵 PETGПодробнее
Корпус для ESP32
📁 3D модель корпуса для платы NodeMCU наПодробнее
Станок для намотки катушек с филаментом
📁 Станок для намотки катушек сПодробнее
Кабельный ввод
📁 3D модель для печати кабельнойПодробнее
Кабельный ввод #2
📁 Компактный контейнер с завинчивающейсяПодробнее
Кабельный гермоввод #3
📁 3D модель для печати кабельногоПодробнее
Кабельные вводы различных размеров
📁 Кабельные вводы различных размеровПодробнее
Распределительная коробка
📁 3D модель для печати распределительнойПодробнее
Водозащищенный кабельный ввод
📁 3D модель кабельного ввода сПодробнее
Кабельный ввод #4
📁 3D модель для печати качественногоПодробнее
Распределительная коробка с креплением на стену
📁 Распределительная коробка с креплениемПодробнее
Адаптеры для SIM карт - 3D модель для печати
📁 Адаптеры для SIM карт — 3D модель дляПодробнее
Корпус для метеодатчика на ESP8266
📁 Корпус для метеодатчика на ESP8266Подробнее
Улучшенный дрон «Nano Long Range» на 1х18650
📁 Улучшенный дрон «Nano Long Range» наПодробнее
Электронные "песочные часы"
📁 Электронные «песочные часы» 📐 STLПодробнее
Контейнер для батарей ft-817
📁 Контейнер для аккумулятора FT-817 сПодробнее
Защитный каркас Yaesu FT 817
📁 Защитные рельсы для Yaesu FT 817 и 818Подробнее
YAESU FT-817 Рельсы
📁 Рельсы с подвесом для тангенты иПодробнее
Портативный настольный источник питания
📁 Портативный настольный источникПодробнее
Кейс для хранения батарей ( 21700, 18650, AA, AAA)
📁 Кейс для хранения батарей ( 21700Подробнее
Каркас для батарей 18650
📁 Корпус для Heltec V4 с GPS, проектПодробнее
Корпус для датчика на esp8266
📁 Корпус для датчика на esp8266 📐 STLПодробнее
Корпус для метеодатчика с анемометром
📁 Корпус для метеодатчика с анемометромПодробнее
Посещая этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.