USB регулятор громкости и кнопки управления
Опубликовано 03.08.2018.
Источник - сайт Радиокот.
Статья не моя, я просто реализовал этот проект и делюсь опытом.
Мерцающий.
Всё началось с того, что моей компьютерной клавиатуре пришлось подписать амнистию и отправить на покой. В творческом процессе она не выдержала нагрева феном и скукожилась. Клавиатура примечательна тем, что имеет несколько мультимедийных кнопок и встроенный регулятор громкости (крутилочка). Ребята, это очень удобная и практичная штука.
При желании можно было бы найти такую же клавиатуру или похожую, но это желание перебил факт продажи отдельных usb-регуляторов громкости. Китайские продавцы предлагает большое разнообразие таких регуляторов по непривычно и неприлично высокой стоимости.
Цель этой статьи – показать как просто и недорого собрать аналогичный регулятор.
Потребуется:
1. Микроконтроллер PIC16F1455 = 1 шт
2. Энкодер со встроенной кнопкой схожих габаритов = 1 шт
3. USB розетка или провод с USB вилкой в ПК = 1 шт
4. Конденсаторы 0,1 мкФ = 2 шт
5. Конденсатор 0,47 мкФ = 1 шт
6. Конденсатор 10 мкФ = 1 шт
7. Резисторы 4,7 кОм = 4 шт
8. Кнопки тактовые 17 мм = 4 шт
9. Ручка приборная 45 мм = 1 шт
10. Ножка приборная SF1406 = 4 шт
В минимальной конфигурации достаточно первых пяти пунктов (работа без кнопок).
Схема и плата примитивные.
Кнопки с функциями: «стоп», «назад», «вперёд», «воспроизведение-пауза».
Встроенная в энкодер кнопка отключает-включает звук (mute).
Кнопки автоматом работают со стандартными плеерами (вероятно и с альтернативными будет работать). Что интересно - регулятор работает в программе ТВ-тюнера Behold TV, регулируя громкость и переключая каналы.
Устройство подключается по технологии Plug and Play (включи и играй, PnP) – это технология компании Microsoft, благодаря которой возможно автоматическое определение и настройка подключенного устройства. При подключении к ПК определяется как USB HID-совместимое устройство. Драйвера не нужны. Работа проверена в XP, W7, W10 – работает.
Схема, прошивка и печатка прилагаются.
============================================= от себя =============================================
Собрал парочку, вот такие девайсы получились

Печатку рисовал сам, так как в авторском варианте печатка под DIP микросхему и выводные элементы.
С разъемом заморачиваться не стал, припаял кабель прямо в плату, такая коробочка с кабелечком получилась.
А вот с энкодерами отдельная история. Заказывал вместе с чипом на Али, пришли. Потом уже понял, что бывают разные энкодеры, как по ощущениям, так и по работе.
Энкодеры с Али больше похожи по ощущениям на галетные переключатели, у них клик совсем уж четкий. Первый девайс собрал на нем.
А потом нашел в закромах другой энкодер, который покупал у нас в магазине и понял, насколько большая разница. Клик в нем мягкий, почти как обычный регулятор громкости.
Второй девайс собирал уже на нем. И оба раза не попал на направление регулировки громкости
Пришлось оба раза колхозить дорожки от энкодера, меняя местами (выводы 2 и 3 на микросхеме).
Коробочки покупал в радиомагазине, как и кабель USB, который просто потом отрезал с одной стороны.
Все заработало сразу, дрова встали от Винды, кнопки заработали, громкости регулируется. Теперь уже от клавы не зависит, есть отдельная коробочка для медиаплеера.
Как подключать камень для прошивки:
С чем столкнулся.
У меня PicKit3 и он отказывался видеть PIC16F1455. Думал уже чипы левые, так как заказывал на Али. Помог, как обычно, Гугл.
В одном их форумов прочитал, что нужно добавить в PicKit3 библиотеку pk2devicefile.dat из ПО для PicKit2.
Добавил, в меню программы появился нужный пункт
После его активации, программа увидела камень и спокойно его прошила.
Полный текст статьи с кучей скринов, а также печатки и прошивка в прилагаемом архиве.
USB регулятор громкости и кнопки управления.7z 1,21МБ
завантажень 186