Перейти к содержанию

Лидеры

Популярный контент

Показан контент с высокой репутацией 17.01.2018 в Записи блога

  1. Новая ревизия ЦАПа Mercury. Еще фото: Изменения по сравнению с предыдущей версией: 1. Исправил ошибку с подключением реле. 2. Добавил керамические конденсаторы на выходы стабилизаторов. 3. Заменил футпринты резисторов преобразователя ток-напряжение на выводные. 4. Добавил ферритовые бусины для м/с гальванической развязки. 5. Убрал полигон и дорожки над м/с гальванической развязки (насколько это было возможно). 6. Привел вход к устоявшейся распиновке от Lynx (1 - BCLK, 2 - NC, 3 - SDATA, 4,6,8 - GND, 5 - LRCK, 7 - MCLK, 9 - PWR, 10 - MUTE). 7. Разъем CTRL сделал универсальным для м/с серии PCM179x с токовым выходом. 8. Добавил возможность приглушать выход ЦАПа сигналом MUTE с разъема INPUT. 9. Изменил трассировку и немного схемотехнику обвязки стабилизаторов LM317/337. 10. Исправил незначительные недочеты в рисунке печатных проводников. Описание сигналов разъема Для PCM1794/98: Управление аппаратное при помощи установки нужных перемычек, либо программное, а номинал R30-R33 200 Ом. RST - сигнал сброса ЦАП, инверсный. F0 - ZERO, сигнал отсутствия сигнала на входе, устанавливается в высокий уровень при обнаружении во входном сигнале 1024 подряд идущих нулевых отсчетов, при этом R2 на плату не устанавливается. F1 - FMT1, выбор формата входного сигнала, по умолчанию - I2S, низкий уровень (установлена перемычка). F2 - FMT0, выбор формата входного сигнала, по умолчанию - I2S, низкий уровень (установлена перемычка). F3 - MUTE, включение режима приглушения, по умолчанию - нормальный режим, низкий уровень (установлена перемычка). F4 - DEEMP, включение функции de-emphasis, по умолчанию - функция отключена, низкий уровень (установлена перемычка). F5 - CHSL, выбор формы огибающей встроенного цифрового фильтра, по умолчанию - крутой (sharp), низкий уровень (установлена перемычка), альтернативный вариант - плавный (slow), высокий уровень (перемычка отсутствует). F6 - MONO, переключение ЦАПа в моно-режим, в данной конструкции эта функция должна быть отключена - сигнал должен быть низкого уровня (установлена перемычка). OE - OUTPUT ENABLE, включение аналогового выхода, высокий уровень - включен (установлена перемычка), низкий уровень - выключен (перемычка отсутствует). SR - SAMPLE RATE, сигнал LRCK шины I2S, который показывает актуальную частоту дискретизации. EXT MCLK - EXTERNAL MCLK, вход внешнего сигнала MCLK. Для PCM1792/95/96: Управление только программное, номинал R30-R33 390 Ом. RST - сигнал сброса ЦАП, инверсный. F0 - MDO, для SPI - сигнал MISO, для I2C - сигнал данных SDA. F1 - MC, для SPI - тактовый сигнал SCK, для I2C - тактовый сигнал SCL. F2 - MDI, для SPI - сигнал MOSI, для I2C - сигнал выбора адреса ADR1. F3 - nMS, для SPI - сигнал nCS, для I2C - сигнал выбора адреса ADR0. F4 - MSEL, выбор интерфейса управления м/с ЦАП, низкий уровень - SPI, высокий уровень - I2C. F5 - ZEROR, сигнал отсутствия сигнала на входе в правом канале, устанавливается в высокий уровень при обнаружении во входном сигнале 1024 подряд идущих нулевых отсчетов в правом канале, при этом R7 на плату не устанавливается. F6 - ZEROL, сигнал отсутствия сигнала на входе в левом канале, устанавливается в высокий уровень при обнаружении во входном сигнале 1024 подряд идущих нулевых отсчетов в левом канале, при этом R8 на плату не устанавливается. OE - OUTPUT ENABLE, включение аналогового выхода, высокий уровень - включен, низкий уровень - выключен. SR - SAMPLE RATE, сигнал LRCK шины I2S, который показывает актуальную частоту дискретизации. EXT MCLK - EXTERNAL MCLK, вход внешнего сигнала MCLK. ADuM1400 при подаче MCLK с отдельного генератора должна быть заменена на ADuM1401. Таким образом, плата получилась универсальной и поддерживает установку любой микросхемы серии PCM179x с токовым выходом. Проведенные сравнительные измерения двух экземпляров ЦАПа на м/с PCM1794 (вых. ток 7,8 mAp-p) и PCM1796 (вых. ток 4,0 mAp-p) показали, что лучший результат THD и IMD дает ЦАП с меньшим выходным током. Измерения экземпляра ЦАПа на PCM1796 + AD8066 + LME49990 THD (1 кГц, 0 дБ) - не хуже 0,0003 %. IMD (60 Гц + 7 кГц) + шум - не хуже 0,0022 %. Уровень выходного сигнала 0 дБ - 3,12 Vp-p 0 дБ (левый, правый), 48 кГц: -6 дБ (левый, правый), 48 кГц: Два тона 250 Гц и 8 кГц (амплитуды 4:1), -3 дБ (левый, правый): Тест джиттера (левый, правый): Подключение к Combo384 (Amanero) Подключение выполняется по следующей схеме: Mercury Combo384 1 - BCLK --------------------- CLK - 4 2 - Not Connected 3 - SDATA ------------------- DATA - 3 4 - GND ---------------------- GND - 13 5 - LRCK ------------------- FSCLK - 5 6 - GND ---------------------- GND - 14 7 - MCLK -------------------- MCLK - 6 8 - GND ---------------------- GND - 15 9 - PWR ---------------------- 3V3 - 10 10 - MUTE -------------------- MUTE - 11 У Amanero нумерация разъема нестандартная - вдоль длинной стороны разъема: У ЦАПа такая: Дополнительные материалы BOM - Bill of Materials - MERCURY.xls Assembly Drawing - DAC02.MERCURY.MB_A.pdf
    2 балла
  2. Предыстория О-о-очень давно я начинал собирать ЦАП со входом S/PDIF на микросхеме серии PCM179х. Если мне не изменяет память, то можно найти мои посты в теме "Делаем ЦАП" на форуме где-то в районе 30-50 страниц. В итоге все вылилось в неудачную конструкцию - были ошибки в трассировке платы. Несколько лет назад я решил все-таки их исправить и заказал новую ревизию той платы. Она успешно запустилась и работала. Но в данной плате все равно есть некоторые недочеты. Во-первых, жутко греются стабилизаторы питания ОУ, во-вторых, не оптимальный вариант преобразователя ток-напряжения - из-за большого выходного тока ЦАПа ОУ работают с некоторыми искажениями, ну и в-третьих - не нужен мне вход S/PDIF. Третья проблема решилась достаточно просто - был собран источник I2S на основе PCM2707 и я подключил его в обход приемника S/PDIF сигнала. Получился такой макет: Решением второй проблемы я занялся позже и переделал аналоговую часть - взял схему от ЦАПа Black Kitty. Там ОУ преобразователя ток-напряжения разгружены при помощи эмиттерных повторителей. Оформил это в виде отдельной платки. В таком виде это и просуществовало до этого лета. Появилось некоторое количество свободного времени и во время очередного прослушивания музыки возникло непреодолимое желание собрать это все в одну кучу на одной плате, чтобы поставить некую точку в этом ЦАПе. Новая плата Схема претерпела некоторые изменения, по большей части в питании. Также важной особенностью стало внедрение гальванической развязки шины I2S на ADuM1400C. На макете на выходе в одном канале присутствует неприятная "постоянка" около 20 мВ, а, стоящие в ФНЧ ОУ LME49990, не поддерживают корректировку нуля. Поэтому в новой схеме ввел для этих целей подстроечник и хотел поставить LT1122, но не смог достать их по адекватной цене и поставил OP42. Все управляющие цепи PCM-ки вывел на отдельный разъем - можно конфигурировать как джамперами, так и какой-то логикой. Аналоговый выход пустил через реле, чтобы была возможность приглушать выход. В питании применял те стабилизаторы, что имелись в наличии. Чтобы конструкция стала законченной, на плату поставил и трансформаторы. За выходные развел плату, размер которой получился 160 на 90 мм. ОУ в преобразователе ток-напряжения на макете грелись до 70 градусов (судя по расчетам, это для них норма), поэтому на новой плате сделал под ними заливку с переходными отверстиями на верхний слой и убрал маску. Хоть какое-то охлаждение будет. Точно так же сделано под стабилизаторами ADP3303, но у них хитрая запатентованная внутренняя конструкция, распределяющая равномерно тепло по всему корпусу, как я понял из документации. Кроме этого, коллекторам транзисторов добавил небольшие полигончики для лучшего отвода и рассеивания тепла. Да, и куда ж ЦАП без названия Решил окрестить его Меркурием - такой же жаркий. Впервые попробовал сделать заказ в Seeedstudio. При производстве китайцы плоховато пропечатали маркировку, но в целом качество отличное. Сборка и запуск Далее последовала сборка. Не очень понравилось паять плату с черной маской - все детали черные, теряются на черном фоне, как-то некомфортно. Сама маска очень классная, достаточно прочная, не отваливается кусками при пайке. Как всегда не обошлось без некоторых ошибок - оказалось, что забыл добавить на плату керамику на выходы стабилизаторов, допаял навесом, и ох уж эти реле... похоже, что миниатюрные они все идут со встроенным диодом. Также спалил одну ADuM-ку, случайно сделав шлейф зеркально, в результате чего у развязки на приемной стороне возникла переполюсовка питания, ADuM-ка перегрелась и больше так и не запустилась... Но, пережив все это, плата завелась и порадовала музыкой на своих выходах. Также нужно сказать пару слов о тепловых режимах. Кроме ОУ преобразователей ток-напряжение, достаточно сильно греются стабилизаторы веток питания +/-12V_A и +9V_А и трансформатор питания ОУ. Но все в пределах нормы - не более 60 градусов. Заключение В целом я очень доволен получившейся конструкцией. Звучание ЦАПа ровное, приятное, на оркестровых записях масштабное, т.е. в целом очень качественное. Когда разберусь с методикой измерения при помощи звуковой карты, попробую сделать замеры. Mercury 3D.PDF Mercury BOM.xls Доработка плат и результаты измерений:
    1 балл
  3. В глубокой связи с тем, что у меня полным ходом сейчас идет стройка дома, возникла потребность включать и выключать тепловую пушку (электрическую) для поддержания более менее плюсовой температуры в определенных зонах. Так как за бортом собственно холодно и лежит снег, а кафельную плитку укладывать надо и сушить ее тоже не помешало бы, чтобы потом летом не отвалилась. Решил побыстренькому замутить суточный таймер из того что есть под рукой. А под рукой оказалось 1. Корпус пластиковый от старого коммутатора TP-LINK 2. Контроллер STM32F030F4P6 3. Часы реального времени DS1307 4. Зарядник от какого то сотового телефона и куча релеюшек и прочего хлама с разбора. Так и сяк поприкидывав что из этого может получиться накрапал схемку Все предельно просто. Пара релюшек управляется ключиками на полевиках. Напряжение питания для них (12 вольт) формирует повышающий конвертер на 34063. Дисплей не стал мудрить, воткнул обычный WH1602 коих валяется большая куча (англоязычных, но часам по барабану). Собственно сами часы на DS1307, в ней же хранятся и все настройки (там есть 56 ячеек свободной "энергонезависимой" памяти). Напряжение питания контроллера формируется линейным стабилизатором +3,3 вольта. Питание - один единственный зарядник от сотика 5 вольт. Можно питать и от USB при желании. Ток потребления в пределах 200 мА. Кнопки управления (их 3 штуки) подключены к верхнему разьему на порты PA0-PA2. PA13 и PA14 - разьем для внутрисхемного программирования. Все, травим платку собираем. Вот все материалы по делу в DipTrace Суточный таймер.zip Фото готового собранного девайса и кишочков Приморчик умеет оперировать двумя релюшками, на каждую из которых устанавливается свой собственный период работы (минимально 1 минута). Из меню можно включать или выключать соответствующую уставку в работу, если требуется например какое то время не использовать реле. (статус ON или OFF). Предусмотрена кнопка ручного управления реле. Просто включает или отключает релюшки, мало ли чего. Управление 3-мя кнопками. Вверх, вниз и выбор. Если долго удерживать кнопку выбор, то в соответствии с тем где сейчас курсор будет выход в режим редактирования соответствующего параметра. Будь то время или одна из уставок периода работы реле. Что и куда вам подскажет курсор. Циферки при редактировании мигают, что очень удобно. По окончании редактирования строки устройство автоматически переходит в рабочий режим. Исходники прошивки тут Dayli_Timer.zip Качаем, распаковываем, компилируем Keil MDK-ARM V5 и прошиваем. Должно работать На всю поделку от идеи до готового решения у меня ушло 4 дня, надеюсь повторить получится быстрее. Собирал все на эпоксидный клей, переднюю панель уже некогда было вылизывать. Подписал просто маркером все. Извините, сроки жмут. Стройку останавливать нельзя. Из всех расходов потрачено на процессор 46 рублей (алиэкспресс), на текстолит рублей 50, зеленый клеммник 60 рублей. Остальное добыть из старой оргтехники. Часть деталей от того же роутера Удачи!
    1 балл
×
×
  • Создать...