24

TDA7313 + DS3231 + IR + LCD2004 (Arduino)

Ранее в http://rcl-radio.ru/?p=58563 описывался пример использования аудиопроцессора TDA7313 под управлением Arduino Nano с дисплеем LCD1602, на этой странице будет рассмотрен аналогичный пример но с использованием дисплея LCD2004 c I2C модулем на базе микросхем PCF8574, что позволяет подключать символьный дисплей LCD2004 к плате Arduino всего по двум проводам SDA и SCL (А4 и А5).

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

Микросхема TDA7313 имеет три стерео входа, регуляторы тембра НЧ и ВЧ, тонкомпенсация и четыре выхода (псевдоквадро). Управление осуществляется с помощью I2C. Обвязка минимальная — несколько конденсаторов и два резистора. Номинальное напряжение питания 9В.

Основные характеристики TDA7313

  • Напряжение питания 6…10 В (9 В рекомендуемое)

  • КНИ не более 0,01 %

  • Отношение сигнал / шум 106 дБ

  • Разделение каналов на частоте 1 кГц 103 дБ

  • Регулировка громкости от -78.75 до 0 дБ (0…63 уровня)

  • Регулировка тембра НЧ и ВЧ ±14 дБ (-7…+7)

  • Регулировка аттенюаторов независимое для каждого выхода от -38.75 до 0 дБ (шаг 1,25  дБ)

  • Регулировка предусилителя от 0 до 11.25 дБ (шаг 3,75 дБ)

Плата Arduino Nano аудиопроцессор TDA7313 обмениваются данными на шине I2C по линиям

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост
TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

В данном примере применены несколько модулей, таких как энкодер KY-040, часы реального времени DS3231, LCD2004_I2C, ИК-датчик VS1838B. Управление параметрами аудиопроцессора осуществляется при помощи 4-х кнопок — STANDBY, MUTE, SET, INPUT и энкодера KY-040.

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

В проекте используется два меню, в первом меню выводятся основные параметры аудиопроцессора — громкость, тембр НЧ и ВЧ, индикатор входа и часы. Во втором меню осуществляется регулировка дополнительных параметров — аттенюаторы выходов, включение или выключение тонкомпенсации, яркость подсветки дисплея в активном режиме и в режиме STANDBY.

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

Дополнительно имеется меню входов которое активируется нажатием кнопки INPUT, при этом происходит переключение входа и имеется возможность изменить регулировку предусилителя входа (независимая для каждого входа) при помощи энкодера.

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

Так как предусмотрена управляемая яркость подсветки дисплея, то можно установить яркость подсветки в основном  режиме и в режиме STANDBY (как правило с пониженной яркостью подсветки), регулировка яркости подсветки осуществляется в меню №2.

Подсветка — убрать перемычку с модуля I2C PCF8574 и подключить вывод модуля к цифровому выходу Arduino D6. Перед подключением замерить ток подсветки который не должен превышать 20 мА (у моего модуля ток не более 15 мА, замер производить между контактами перемычки).

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

Максимальный выходной ток одного выхода Arduino Nano не должен превышать 40 мА.

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

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

Установить текущее время можно двумя способами:

  • Установки времени через скетч:

Раскомментируйте строку:

clock.setDateTime(__DATE__, __TIME__); // Устанавливаем время на часах, основываясь на времени компиляции скетча

загрузите скетч, далее закомментируйте строку:

// clock.setDateTime(__DATE__, __TIME__); // Устанавливаем время на часах, основываясь на времени компиляции скетча

повторно загрузите скетч.

  • Установка времени кнопками:

Перейдите в режим STANDBY, нажать и удерживать кнопку энкодера, нажимать кнопки:
SET — обнуление секунд
IN — коррекция минут
MUTE — коррекция часов

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

#define IR_1 0x33B8A05F // Кнопка вверх

#define IR_2 0x33B8609F // Кнопка вниз

#define IR_3 0x33B810EF // Кнопка >

#define IR_4 0x33B8E01F // Кнопка <

#define IR_5 0x33B850AF // Кнопка IN

#define IR_6 0x33B844BB // Кнопка SET

#define IR_7 0x33B8946B // Кнопка MUTE

#define IR_8 0x33B800FF // Кнопка STANDBY (POWER)

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

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

В проекте предусмотрен выход STANDBY для управления режим STANDBY усилителя мощности, а так же режим MUTE. Все параметры сохраняются в энергонезависимую память, сохранение происходит в момент перехода в режим STANDBY.

TDA7313 + DS3231 + IR + LCD2004 (Arduino) Arduino, Электроника, Программирование, Самоделки, Аудиотехника, Длиннопост

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

TECHNO BROTHER

2K постов13.4K подписчик

Правила сообщества

1-Мы А-политическое сообщество. 2-Запрещено оскорбление: Администрации Пикабу, сообщества, участников сообщества а также родных, близких выше указанных.

3-Категорически запрещается разжигание межнациональной розни или действий, направленных на возбуждение национальной, расовой вражды, унижение национального достоинства, а также высказывания о превосходстве либо неполноценности пользователей по признаку их отношения к национальной принадлежности или политических взглядов. Мат - Нежелателен. Учитесь выражать мысли без матерщины