audiohobby.ru audiohobby.ru

Модуль индикации и управления с OLED дисплеем

Предлагаю вашему вниманию собственный вариант модуля индикации, работающий как с модулем гальванической развязки Андрея, так и с моим модулем селектора цифровых входов. Также модуль позволяет дистанционное переключение цифровых входов, управление режимами работы цифрового фильтра ЦАП и автоматический выбор режима работы Master/Slave ЦАП в зависимости от выбранного источника сигнала. Модуль AH-I6 тоже собирал, но в нем очень не нравится стандартный 1602 ЖК экран. Было принято решение разработать свой модуль индикации, но на OLED дисплее. Также OLED экран выбирался под имеющийся корпус на замену модуля AH-I6. Предлагаемый модуль индикации по установочным размерам (крепёжные отверстия, расположение индикатора) и функционалу практически соответствует оригинальному модулю AH-I6 за исключением разъемов. Также предлагаемый модуль может работать как с USB транспортом AMANERO так и XMOS (также работает с транспортом TX1-Lite) без какой либо перепрошивки. Тип используемого транспорта выбирается в сервисном меню настройки. 

В ходе экспериментов выбор пал на OLED модуль 2,08’’ 256х64 на контроллере SH1122, покупал данный экран на алиэкспресс. Жалко только, что данные экраны идут только с белым цветом свечения. Площадь этого экрана и его размеры практически идентичны с размерами рабочей области экрана 1602, примененного в  AH-I6.

схема и внешний вид собранного модуля приведены на рисунках.

Вид при работе от оптического входа 


 

Схема модуля

Вид при работе от USB транспорта

 

Управление ЦАП предусмотрено или с пульта ДУ или энкодером или кнопками. Всего предусмотрено 3 кнопки, под имеющийся корпус. Но также есть возможность управления энкодером вместо кнопок.

Кнопка + или поворот энкодера вправо переключает входа ЦАП или режим работы ЦФ ЦАП в сторону увеличения;

Кнопка — или поворот энкодера влево  переключает входа ЦАП или режим работы ЦФ ЦАП в сторону уменьшения;

Кнопка MENU или кнопка энкодера  переключает между выбором цифровых входов или выбором режима работы цифрового фильтра.

Все управление режимами работы ЦАП, управление режимами цифрового фильтра и переключение входных сигналов гальванически развязано от модуля индикации через оптопары. Модуль индикации связан гальванически только с USB транспортом аналогично модулю AH-I6.

Разъем AMANERO, он не pin-to-pin совместим  с разъемом оригинального модуля гальванической развязки от Андрея, но это несовместимость учтена в прошивке управляющего контроллера.

В качестве управляющего микроконтроллера применен STM32F103C8T6. Данный контроллер, как оказалось, дешевле и проще всего демонтировать с платы BluePill. Также с этой платы я использовал кварц, стабилизатор питания 3,3В и блокировочные керамические конденсаторы.

платы BluePillбрал тут.  Там же можно взять и программатор для прошивки контроллера ST-Link.

Прошить микроконтроллер STM32F103C8T6 можно 2 способами. Самый простой способ это программатором ST-Link через разъем на плате модуля.  2 способ это прошивка контроллера на плате BluePill с помощью того же ST-Link или переходника USB-COMнапример на микросхеме FT232 через программу Flash loader demonstrator. Потом уже прошитую микросхему перенести на плату модуля индикации. Рекомендую перед прошивкой сначала полностью стереть микроконтроллер.

Есть две прошивки данного модуля индикации.

первая прошивка (DAC_control_full.bin) предназначена для работы с моим модулем селектора сигналов. Эта прошивка позволяет переключать входа, менять режим работы цифрового фильтра ЦАП.

вторая прошивка (DAC_control_light.bin) предназначена для работы с переходниками от Андрея. В данной прошивке возможно только переключение режима работы цифрового фильтра ЦАП. При использовании этой прошивки, на плате не распаиваются оптроны U1-U3 и U5-U6.

Логика управления следующая:

при нажатии на кнопку + или поворотом энкодера вправо, модуль переключает цифровой вход или режим работы цифрового фильтра по кругу в сторону увеличения.

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

при коротком нажатии на кнопку Menu или на кнопку энкодера, происходит переключение между выбором входа и режимом цифрового фильтра.

при длинном нажатии на кнопку Menu или на кнопку энкодера происходит переход в сервисное меню настройки. В этом меню можно менять яркость индикатора, задать тип USB транспорта (AMANERO или XMOS), информацию о типе микросхемы ЦАП, информацию о типе самого ЦАП.

Тип микросхемы ЦАП и тип самого ЦАП индицируются на экране только в течении определенного времени после включения. Это такая эстетическая функция, сделана больше для красоты. Т.к. разъем CONFIGв большинстве конструкций ЦАП Андрея унифицирован, то пока в прошивке реализованы надписи AH-D6 v2.1, AH-D6.1, AH-D16 Pro, AH-D3.1. Выбор микросхемы самого ЦАП это AK4490 или АК4493.

Данные о типе USB транспорта необходимы для корректного определения частоты дискретизации с пинов F0-F3. Amanero и XMOS транспорты формируют разные значения на пинах F0-F3, и чтобы не делать отдельную прошивку самого модуля для каждого транспорта, тип транспорта выбирается через меню. 

Все изменения сохраняются в энергонезависимую память микроконтроллера.

Для дистанционного управления я использовал такой пульт. Он программируемый, всего использую четыре кнопки из шести. Из Китая данный пульт приходит непонятно как запрограммирован. У меня, например, 2 кнопки были запрограммированы на одну команду. Поэтому предлагается перепрограммировать данный пульт. Самый простой вариант это и использованием какой либо платы Arduino, например UNO или NANO. Транзистор любой маломощный NPN типа, ИК диод тоже выпаял из какого то ненужного пульта. 

Схема для программирования пульта

как это выглядит в реале. 

Плату ARDUINOнеобходимо прошить приложенным скетчем, необходимая библиотека Irremoteтакже прилагается. Данную библиотеку надо установить в среду программирования Arduino.  Этот скетч реализует одну простую функцию: при нажатии в терминале цифры 1, светодиод формирует ИК сигнал, соответствующий кнопке Power на пульте ДУ, цифре 2 соответствует кнопка CH+ пульта ДУ и т.д. Соответственно этим командам и необходимо обучить пульт ДУ.  

Можно регулировать в небольших пределах яркость индикатора. У себя поставил минимальную, вроде как должно поспособствовать более долгой жизни дисплея.

 

+35
Нет комментариев. Ваш будет первым!