ch-светомузыка и AK4113

Просмотров: 1135


Пришло время вернуться к светомузыке.

На сегодня использование аналогового входа стало непрактичным, на сегодня необходимо использовать S/PDIF и Toslink.

С этим надо было как то разобрать, что это такое, так как я отстал этом направлении.

S/PDIF

S/PDIF или S/P-DIF — расшифровывается как Sony/Philips Digital Interface (или InterconnectFormat (описано также как IEC 958 type II в международном стандарте IEC-60958). Является совокупностью спецификаций протокола низкого уровня и аппаратной реализации, описывающих передачу цифрового звука между различными компонентами аудиоаппаратуры[1].

На наш язык это передача данных по коаксиальному кабелю, т.е. по проводам, волновое 75 ом.

Toslink

Toslink (сокр. от Toshiba Link) — стандарт соединения с помощью оптоволокна (световодов), разработанный корпорацией Toshiba.

Часто встречается разный способ написания, например: TOSLINK, TOSlink, TosLink, и Tos-link. TOSLINK (с записью в верхнем регистре) является зарегистрированной торговой маркой Toshiba. Общее название стандарта — EIAJ optical.

TOSLINK — волоконно-оптический кабель. Сейчас большую популярность приобрели разъёмы типа MiniTOSLINK Mini toslink -это разъём оптического кабеля в форм-факторе 3,5 jack. Очень часто такие разъёмы встречаются в современных ноутбуках, где выход S/PDIF совмещён с выходом на наушники. Для соединения такого ноутбука с ресивером потребуется кабель MiniTOSLINK — TOSLINK, либо переходник для стандартного кабеля TOSLINK-TOSLINK.

Но Headphone Optical Toslink я использовать не буду, т.к. решил отказаться от аналоговой части. Все таки почему решил отказаться?

Первая проблема. Дело в том, что для качественной работы FFT надо четко понимать ноль сигнала, для этого я в старой схеме использовал, то цифровой потенциометр для подстройки нуля, то потом многооборотистый потенциометр. Все это заставляло выполнять перед включением или в стадии наладки настройку нуля, точность должна быть очень большой даже малейшее отклонение начинало вносить в Фурье заметные искажения. Ну и была проблема времени, старение элементов и уход нуля сигнала.

Вторая проблема. Это, что что в аналоговой части возможно возникновение КЛИППИНГА. Даже если происходит симметричное и “красивое” ограничение, оно возникает когда уровень сигнала может быть выше ожидаемого, Фурье взрывается кучей фантомных частот, что просто смазывает картинку светосинтезатора. Борьба методом написанием разного рода АРУ сильно большого эффекта не дает.

Вот по этому идея отказаться от аналоговой части и перейди на цифровой интерфейс имеет место и видеться более перспективной.

Изучение я начал с возможности приобретения и стоимость преобразователей. Для микроконтроллера, мне нужны данные в формате I2S. Ищем Digital Audio Interface Receiver, что имеем:

Сравнение преобразователей
Receiver Входы Выходы Тип Корпус Управление Цена ($) Цена Китай ($)
CS8416 8 Receiver MCU/PIN 8-9 1-2
WM8804 1 1 Transceiver MCU/PIN 1-2
WM8805 8 1 Transceiver MCU
DIR9001 1 Receiver PIN 4-5
AK4117VF 2 Receiver 24VSOP MCU 3-4 1
AK4113VF 6/2 Receiver 30VSOP MCU/PIN 5 1-2
AK4118AEQ 8 2 Transceiver 48LQFP MCU/PIN 4 1

Мой выбор остановился на AK4113VF.

Теперь надо разобраться с назначением выводов, что куда и зачем едят.

Для начала мы можем навастривать работу преобразователя через последовательные интерфейс. Он дает возможность управлять чрез SPI (4 проводный) и I2C. Я решил это возможность не использовать по двум причинам, мне надо только два входа, я предполагаю оптический и коаксиальный и мне необходимо только выход I2S для микроконтроллера.

Для работы с управлением без микроконтроллера необходимо на вывод P/SN подать высокий уровень. Я использую питание 3,3 вольта. поэтому подключаю напрямую к шине +3,3V (к питанию цифровой части) При этом внутрений коммутатор переключает выводы преобразователя.

Тактовый генератор я буду использовать с кварцем 24,576 MHz, для этого смотрим таблицу 1 (описания) выбираем режим 0. Для этого выводы  CM0/CDTO/CAD1 (30) и CM1/CDTI/SDA (29) подключаем к земле.

Выход тактовой частоты для ЦАП (выходы MCKO1 и MCKO2), нам нет необходимости использовать, поэтому для удобства схемотехники выводы управления OCKS1/CCLK/SCL (28) и OCKS0/CSN/CAD0 (27) мы их также подключим к земле. Выходы MCKO1 (26) и MCKO2 (25) оставим не подключенными.

В режиме параллельного управления мы можем использовать только 2 входа (вместо 6) это входы RX1 (11) и RX5 (15) для выбора с какого входа обрабатывать сигнал надо использовать выход IPS/RX6 вывод 16. Этот вход подключим к микроконтроллеру будем входами управлять через дистанционное управление.

Спойлер. Дистанционное, будет два варианта, через смартфон (WI-FI) и IR.

И остается настройка данных которые будут формировать преобразователь нам нужен I2S, для это необходимо настроить входы RX2/DIF0, RX3/DIF1, RX4/DIF2. Смотрим таблицу 16 в описании нам нужен формат 24-bit, I2S. Это режим 5 для этого подключаем RX2/DIF0 (12) и RX4/DIF2 (14) к +3,3V, а RX3/DIF1 (13) к земле.

Кварцевый резонатор подключаем к выводам XTI (5) и XTO (6) конденсаторы выбираем из рекомендаций на резонатор.

Спойлер. вообще то можно использовать без резонатора, для этого вывод XTI надо подключить к земле и настроить на работу без резонатора выводы CM0/CDTO/CAD1 и CM1/CDTI/SDA надо подключить к земле.

Для красоты к некоторым выводам подключим светики (LED), это даст возможность видеть как работает преобразователь при наличии входного сигнала (ну и будет на плате, чёто блымать, ну говорю для красоты):

V/TX (4)- флаг достоверности входных данных.

INT0 (20) – флаг 96 kHz

FS96/I2C (19) – флаг UNLOCK/PARITY

INT1 (17) – флаг AUTO/AUDION

Полное назначение можно прочитать в описании в разделе обработка ошибок описания.

Вход цифровых данных DAUX (24) не используем подключаем к земле. Вход R (8) согласно описания через резистор 15 kOhm подключаем к аналоговой земле.

С выводами питания (опишу после в самой светомузыке) тут проще, питание аналоговой части, питание цифровой части и питание выходного цифрового буфера (преобразователь уровня) у меня одноуровневое питание, все к +3,3V через фильтры, правда аналоговую часть запитываем через отдельный LDO.

И в окончании выводы которые мы используем для подключения к микроконтроллеру:

SDTO (22) 24-bit, I2S  – данные цифровые звука I2S интерфейса

LRCK (21) L/H – индикатор канала I2S интерфейса

BICK (23) 64fs – синхросигнал I2S интерфейса

PDN (7) – сброс преобразователя (включение выключение)

IPS/RX6 (16) – выбор входа цифрового аудио.

Вроде ничего не забыл.

Схема подключения преобразователя AK4113VF:

Внимание: Схема предварительная 100%, что в оригинале будут изменения!


 

Digital Audio Interfaces


Это только начало….


Это может быть интересно


  • AD9833 – Programmable Waveform GeneratorAD9833 – Programmable Waveform Generator
    Просмотров: 2474 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить …
  • LED драйвер TM1639LED драйвер TM1639
    Просмотров: 1944 TМ1639 позволяет работать на матрицу 8*8 или 8 семисегметных индикаторов. Может работать как на индикаторы с общим катодом, но и есть возможность подключать общим анодом. Для управления драйвером …
  • HVLD модуль на примере PIC24FJ128GA204HVLD модуль на примере PIC24FJ128GA204
    Просмотров: 567 HVLD модуль представляет собой простое устройство, для контроля напряжения питания микроконтроллера или внешнего напряжения (через делитель). Его задача при “выходе” напряжения за заданные пределы сформировать сообщение микроконтроллеру, что …
  • Мультизоновый индикатор-терморегулятор ch-c3010Мультизоновый индикатор-терморегулятор ch-c3010
    Просмотров: 1025 Часто возникает необходимость получить информацию по температуре с множества точек контроля. Вам необходимо знать температуру в комнате, в коридоре,  температуру на улице, а в погребе (или на балконе) …
  • Одноканальный емкостной сенсор – AT42QT1012Одноканальный емкостной сенсор – AT42QT1012
    Просмотров: 2190 Описание сенсора [wpdm_file id=242] Незаконченный проект, так-как сенсор не оправдал своего назначения, не рекомендую, просто выброшенные деньги. Особенности. • Количество сенсоров – один, режим переключения ( touch-on/touch-off ), а также программируемая …
  • MPLAB® Harmony – или как это просто! Часть 4.MPLAB® Harmony – или как это просто! Часть 4.
    Просмотров: 1700 Часть четвертая – это может показаться немного сложно. Структура проекта. Для облегчения конфигурирования проекты MPLAB Harmony обычно структурированы таким образом, чтобы изолировать код, необходимый для настройки «системы», от …
  • Проект с использованием MCC часть 04Проект с использованием MCC часть 04
    Просмотров: 960 Теперь простого горения светиков нам не достаточно, заставим их мигать. Для начала используем первобытно простой способ, но достаточно простой. Используем функции delay, напрягаться откуда они берутся не будем, самое …
  • Гаджеты для домашней автоматики – Датчик приближенияГаджеты для домашней автоматики – Датчик приближения
    Просмотров: 1747 Управление светодиодным освещением – Датчик приближения. Данный гаджет предназначен для управления внутренним освещением мебели. Датчик позволяет определить закрытие или открытие дверцы или ящика и при этом включать или …
  • Analog-to-Digital Converter with Computation Technical BriefAnalog-to-Digital Converter with Computation Technical Brief
    Просмотров: 1018 Аналого-цифровой преобразователь с вычислительным модулем. ВВЕДЕНИЕ Аналого-цифровой преобразователь (ADC) с вычислительным модулем (ADC2) в 8-разрядном микроконтроллере Microchip имеет встроенные вычислительные функции, которые обеспечивают функции пост-обработки, такие как передискретизация, …
  • Цифровой спидометр для автомобиляЦифровой спидометр для автомобиля
    Просмотров: 10019  Универсальность печатной платы ch-c0030pcb позволяет создавать на её основе разнообразные устройства. Одним из таких устройств является электронный спидометр для автомобиля, в котором можно задать два компаратора скорости, например,  для …



 

Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.