Ранее в статьях http://rcl-radio.ru/?p=112670 и http://rcl-radio.ru/?p=112468 рассматривались примеры создания регуляторов громкости на аудиопроцессоре LC75341 с использованием дисплеяLCD1602 и OLED 0.96″, в этом примере будет показан пример создания регулятора громкости с использованием дисплея OLED 1.3″.
OLED 1.3″ I2C 128х64 дисплей обладает высокой контрастностью, высоким разрешением и низким энергопотреблением. В OLED дисплее отсутствует дополнительный слой подсветки всей поверхности экрана. Каждый пиксел, формирующий изображение, испускает самостоятельное свечение.
Чип драйвера — SH1106, который обеспечивает связь I2C.
Параметры дисплея SH1106:
- Технология дисплея: OLED
- Разрешение дисплея: 128 на 64 точки
- Диагональ дисплея: 1,3 дюйма
- Угол обзора > 170°
- Напряжение питания: 3,3 В ~ 5.0 В
- Мощность: 0,08 Вт
- Габариты: 35.7 х 30.9 х 4.0 мм
- Вес: 7 грамм
Подключение OLDE дисплея к плате Arduino Nano (Uno):
- VCC > 5V
- GND > GND
- SCL > A5 (I2C)
- SDA > A4 (I2C)
Для использования дисплея OLED 1.3″ Вам необходима библиотека U8glib , ее можно установить с источника — https://github.com/olikraus/u8glib/ или установить при помощи менеджера библиотек как показано в — http://rcl-radio.ru/?p=130369.
Регулятор громкости содержит два основных блока, первый блок микроконтроллерный (Arduino Nano или плата LGT8F328P-LQFP32 MiniEVB) с органами управления и индикации, второй блок плата аудиопроцессора.
Основные параметры регулятора громкости и тембра на LC75341:
- Регулировка громкости от -79 до 0 дБ (шаг 1 дБ)
- Независимая регулировка громкости (баланс)
- Входной предварительный усилитель входа от 0 до +30 дБ (шаг 2 дБ)
- 4-х канальный коммутатор входов
- Регулировка тембра BASS от 0 до +20 дБ (шаг 2 дБ)
- Регулировка тембра TREBLE от -10 до +10 дБ (шаг 2 дБ)
- Напряжение питания от 5 до 10 В
- Управление цифровое 3-Wire (CL, DI, CE) (макс. тактовая частота до 500 кГц)
- Входное сопротивление 50 кОм
- Коэффициент нелинейных искажений 0,01% (макс.)
Основное управление параметрами аудиопроцессора будет осуществляться при помощи энкодера (KY-040) и 3-х кнопок, так же будет применен ИК пульт который будет дублировать энкодер и кнопки управления.
В регуляторе громкости на аудиопроцессоре LC75341 реализованы следующие функции:
- Регулировка громкости от 0 до 75 шагов (1 шаг равен 1 дБ, регулировка от -75 до 0 дБ)
- Регулировка тембра ВЧ от -10 до +10 дБ
- Регулировка тембра НЧ от 0 до 20 дБ
- Регулировка баланса -4…+4 дБ
- Входной предварительный усилитель с регулировкой от 0 до +30 дБ раздельно для каждого входа.
- 4-е стерео входа
- Режим MUTE
- Режим STANDBY с выходом управления ST-BY
- 4-е лог. выхода для управления источниками входных сигналов
- Гашение дисплея при не активности органов управления в течении 30 сек (для активации режима гашения дисплея необходимо в режиме POWER OFF нажать и удерживать кнопку энкодера, далее нажать кнопку INPUT. При активации режима на дисплее появится надпись OLED_OFF, при отключении режима отключения дисплея появится надпись OLED_ON).
- Сохранение всех настроек в энергонезависимой памяти
Схема регулятора громкости
ИК пульт дублирует работу энкодера и кнопок. Для управления регулятором подойдет практически любой пульт ИК, для поддержки Вашего пульта необходимо прописать коды кнопок в скетч:
#define IR2 0x33B820DF // button encoder
#define IR3 0x33B8946B // mute
#define IR4 0x33B810EF // >>>
#define IR5 0x33B8E01F // <<<
#define IR6 0x33B844BB // INPUT
#define POWER 0x33B800FF // STANDBY
Для получения кодов кнопок Вашего пульта загрузите скетч и откройте монитор порта, при нажатии кнопки пульта его код будет отображен в мониторе порта.
Форум — http://forum.rcl-radio.ru/viewtopic.php?pid=8112#p8112