Как-то раз друг показал мне видеоролик, в котором радиолюбитель рассказывал о темброблоке на аудиопроцессоре РТ2313L. До этого момента я не интересовался такого рода устройствами. Но возможность отказаться от кучи переменных резисторов и осуществлять все регулировки, а также переключать входные каналы только с помощью энкодера, меня увлекла. |
---|
Насколько я понимаю, на момент написания этой статьи, возраст PT2313L уже перевалил за 15 лет. Их активно применяют в разного рода аудио аппаратуре типа автомагнитол. Существует целая линейка такого рода аудиоустройств с разными возможностями регулировки параметров звука. В свою очередь РТ2313L является дешевым аналогом TDA7313N и выпускается в двух модификациях: урезанная версия - 20 ножек и полная версия - 28 ножек. Полная версия включает себя регулировку громкости, верхних и нижних частот, баланса, а также возможность переключаться между четырьмя (3+1) входными каналами. То есть вбирает в себя все функции темброблока, селектора каналов и регулятора громкости. При этом имеет выходы на 4 канала (2 – фронт, 2 - тыл). В общем мощная штука, а значит ее надо проверить и применить.
Подключать буду как обычно по хардкору напрямую к МК. Никаких сторонних библиотек. В качестве управляющего устройства использую ATMega8, а вывод информации буду осуществлять на дисплей Nokia5110. Можно сказать все по-народному.
Для проверки работоспособности данного аудиопроцессора была сделана тестовая плата и отработана библиотека работы с ним. Для возможности подключения РТ2313 к любым удобным контактам МК я не стал пользоваться встроенным в МК двухпроводным последовательным интерфейсом, а сделал передачу данных на программном уровне.
Библиотека состоит из блоков: инициализации РТ2313, регулировки тембра, баланса, громкости, а также подпрограммы передачи команд в аудиопроцессор. Для работы МК с РТ2313 необходимо настроить порты и выводы подключения, а также, для микроконтроллеров, работающих на частотах более 8 МГц, возможно потребуется подобрать значение паузы с целью понижения скорости передачи данных.
//настройки связи с аудиопроцессором #define PORT_PT2313 PORTB //порт подключения аудиопроцессора #define DDR_PT2313 DDRB //переключатель порта аудиопроцессора #define PIN_PT2313 PINB //опрос порта аудиопроцессора #define PIN_DATA 1 //номер выхода порта для данных #define PIN_CLK 0 //номер выхода порта для тактирования #define PAUSA_I2S 0 //параметр паузы для передачи данных
Также необходимо настроить начальные параметры аудиопроцессора.
#define SET_PROC 0b01011011 //0b010G1G0S2S1S0 G1 G2 – параметры усиления (11) - усиление 0dB (т.е. без усиления) S2 – включение / выключение аудиопроцессора (0) - процессор включен S1 S0 – номер текущего входа (11) – 4 (внешние входы отключены).
Для тестирования работы аудиопроцессора была создана программа, которая по короткому нажатию переключает выбранный для регулировки параметр. Параметры переключаются по кругу: громкость; каналы; бас; высокие частоты и баланс. По долгому нажатию из любого экрана настроек можно перейти в экран громкости.
Я тестировал работу процессора только на фронтальных каналах. Как не странно, но аудиопроцессор показал себя с хорошей стороны. Все регулируется четко и вполне достаточно, а главное с одной ручки. На видео ниже показано как изменяется синусоида на экране осциллографа при изменении громкости и баланса.
Код программы, прошивка и схема в приложении. Разводку платы не предлагаю, т.к. она не оптимальна и имеет некоторые ошибки, которые пришлось исправлять по ходу.
Ну а на сегодня все. Удачи.
13.06.24
Если вдруг найдете в статье неточности или заблуждения. Напишите мне об этом. Я подправлю.
Приложение: Схема, программа, прошивка.