Найти в Дзене
Радиотехника

Регулятор громкости M62429 + OLED 128×32 (Arduino)

M62429 — двухканальный цифровой регулятор громкости с последовательным управлением. Микросхема заменяет традиционные механические потенциометры и позволяет точно настраивать уровень  звука в аудио аппаратуре. Ранее в http://rcl-radio.ru/?p=63039 описывался регулятор громкости на базе ИМС M62429 с дисплеем LCD1602 на базе контроллера HD44780. В этой статье будет аналогичный пример но с использованием дисплея OLED 128×32. Основные характеристики дисплея: ИК пульт дублирует работу энкодера и кнопок. Для управления регулятором подойдет практически любой пульт ИК, для поддержки Вашего пульта необходимо прописать коды кнопок в скетч: // коды кнопок ИК пульта
#define MENU 0x2FDB24D // button encoder
#define UP 0x2FDD02F // >>>
#define DW 0x2FD32CD // <<<
#define POWER_IR 0x2FD00FF // POWER
#define MUTE_IR 0x2FDB04F // MUTE Для получения кодов кнопок Вашего пульта загрузите скетч и откройте монитор порта, при нажатии кнопки пульта его код будет отображен в мониторе порта. Схема блока управле
Оглавление

M62429 — двухканальный цифровой регулятор громкости с последовательным управлением. Микросхема заменяет традиционные механические потенциометры и позволяет точно настраивать уровень  звука в аудио аппаратуре.

Основные возможности

  • Два независимых канала — можно раздельно регулировать громкость левого и правого каналов.
  • Широкий диапазон регулировки — от 0 до −83 дБ с шагом 1 дБ.
  • Низкие искажения — коэффициент нелинейных искажений (THD) составляет около 0,01 % при уровне сигнала 0,5 Vrms.
  • Минимальное шумовое воздействие — выходной шум около 5 мкВ rms при максимальной громкости.
  • Простое управление — данные передаются по двухпроводной последовательной шине (DATA и CLOCK).

Электрические параметры

  • Напряжение питания: 4,5–5,5 В (номинальное — 5 В), максимально допустимое — 6 В.
  • Ток потребления: типовое значение — 8 мА, максимальное — 16 мА.
  • Рабочий температурный диапазон: от −20 °C до +75 °C.

Цоколёвка (8‑выводной корпус DIP‑8 / SOP‑8)

  1. VIN1 — вход канала 1.
  2. VOUT1 — выход канала 1.
  3. GND — общий провод (земля).
  4. DATA — вход данных последовательной шины.
  5. CLOCK — тактовый вход для передачи данных.
  6. VCC — напряжение питания.
  7. VOUT2 — выход канала 2.
  8. VIN2 — вход канала 2.

Ключевые особенности

  • Встроенная опорная схема — не требует дополнительных внешних цепей смещения.
  • Независимая регулировка каналов — каждый канал управляется отдельно.
  • Минимальные внешние компоненты — для работы достаточно развязывающего конденсатора (0,1 0,33 мкФ) и входного электролитического конденсатора (2,2 мкФ).
  • Низкий уровень шума — подходит для высококачественного аудио.

Рекомендации по применению

  • Стабилизация питания. Подключите развязывающий конденсатор (0,1-0,33 мкФ) между VCC и GND для подавления помех.
  • Фильтрация входного сигнала. Установите электролитический конденсатор 2,2 мкФ на вход каждого канала для улучшения качества звука.
  • Качество питания. Минимизируйте пульсации напряжения — они могут повысить уровень шума на выходе.

Ранее в http://rcl-radio.ru/?p=63039 описывался регулятор громкости на базе ИМС M62429 с дисплеем LCD1602 на базе контроллера HD44780. В этой статье будет аналогичный пример но с использованием дисплея OLED 128×32.

-2

Регулятор громкости и тембра на M62429 содержит следующие компоненты:

  • Плата Arduino Nano (или аналог)
  • Энкодер KY-040
  • IR — датчик
  • Две кнопки управления
  • Дисплей OLED 128×32
  • ИМС M62429

Основные параметры компонентов схемы:

0,91″ I2C 128×32 OLED — это компактный дисплей, который использует технологию OLED (Organic Light Emitting Diode) для отображения изображений. Дисплей имеет интерфейс I2C, который обеспечивает простое подключение к микроконтроллерам и другим устройствам.
0,91″ I2C 128×32 OLED — это компактный дисплей, который использует технологию OLED (Organic Light Emitting Diode) для отображения изображений. Дисплей имеет интерфейс I2C, который обеспечивает простое подключение к микроконтроллерам и другим устройствам.

Основные характеристики дисплея:

  • Разрешение 128×32 пикселей.
  • Размер дисплея 0,91 дюйма (около 2,3 см).
  • Яркость до 150 кд/м².
  • Контрастность 2000:1.
  • Угол обзора 160 градусов.
  • Поддержка интерфейса I2C с адресом 0x3C.
Arduino Nano:Микроконтроллер: ATmega328P
Напряжение питания: 5 В
Тактовая частота: 16 МГц
Память Flash: 32 КБ
Оперативная память (RAM): 2 КБ
Постоянная память (EEPROM): 1 КБ
Количество цифровых выводов: 14
Количество аналоговых входов: 8
Размеры платы: приблизительно 45 x 18 мм
Arduino Nano:Микроконтроллер: ATmega328P Напряжение питания: 5 В Тактовая частота: 16 МГц Память Flash: 32 КБ Оперативная память (RAM): 2 КБ Постоянная память (EEPROM): 1 КБ Количество цифровых выводов: 14 Количество аналоговых входов: 8 Размеры платы: приблизительно 45 x 18 мм
Технические характеристики ИК-модуля VS1838B:Потребляемый ток: 0,5 мА
Рабочая частота: 38 КГц
Расстояние приема сигнала: 20 м
Эффективный угол приема сигнала: 90˚
Рабочее напряжение (приемник): 2,7 — 5,5 В
Рабочее напряжение (модуль): 2,7 — 5,5 В
Технические характеристики ИК-модуля VS1838B:Потребляемый ток: 0,5 мА Рабочая частота: 38 КГц Расстояние приема сигнала: 20 м Эффективный угол приема сигнала: 90˚ Рабочее напряжение (приемник): 2,7 — 5,5 В Рабочее напряжение (модуль): 2,7 — 5,5 В
Основные параметры KY-040:
Основные параметры KY-040:
  • Принцип работы: Инкрементальный энкодер с механическим переключателем.

    Интерфейс: Сигнал передается по трем линиям:
    CLK (Clock Line) — импульсный сигнал, определяющий направление вращения.
    DT (Data Line) — второй импульсный сигнал, синхронизируется с CLK.
    SW (Switch) — механический выключатель, срабатывающий при нажатии на вал энкодера.
    Напряжение питания: 3.3–5 В постоянного тока.
    Рабочий ток: Очень маленький (<1 мА).
    Размеры: Миниатюрный модуль, удобен для установки на печатные платы.
    Материал вала: Металлический или пластиковый, чувствителен к касанию пальцами.
    Кол-во импульсов на оборот: Обычно 20–30 шагов на полный оборот, точнее указывается производителем конкретного экземпляра.
    Совместимость: Совместим с большинством микроконтроллеров (Arduino, ESP32, STM32 и т.п.).

Основные параметры регулятора громкости

  • Регулировка громкости 0 … 67 дБ
  • Регулировка баланса от -8 до +8 дБ
  • Режим MUTE
  • Режим STANDBY
  • Дополнительный цифровой выход D12 для управления режимом STANDBY УМЗЧ
  • Управление энкодер, ИК пульт и две кнопки (MUTE, POWER)

ИК пульт дублирует работу энкодера и кнопок. Для управления регулятором подойдет практически любой пульт ИК, для поддержки Вашего пульта необходимо прописать коды кнопок в скетч:

// коды кнопок ИК пульта
#define MENU 0x2FDB24D // button encoder
#define UP 0x2FDD02F // >>>
#define DW 0x2FD32CD // <<<
#define POWER_IR 0x2FD00FF // POWER
#define MUTE_IR 0x2FDB04F // MUTE

Для получения кодов кнопок Вашего пульта загрузите скетч и откройте монитор порта, при нажатии кнопки пульта его код будет отображен в мониторе порта.

-7

Схема блока управления

-8

Схема регулятора громкости

-9

Регулировка громкости происходит при помощи энкодера KY-040, ИК пульт дублирует работу энкодера, информация выводится на OLED 128×32 на базе контроллера SSD1306.

Кнопка энкодера позволяет переключать режимы настроек между громкостью и балансом. Уровень громкости и баланса сохраняются в энергонезависимой памяти.

Скетч - http://rcl-radio.ru/?p=134437