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

Аудиокодек Texas Instruments TLV320AIC3254IRHBR: нужны ли буферные ОУ для АЦП?

Дисклеймер: я довольно зелёный в электронике, поэтому попрошу не сразу закидывать тапками… Меня привлекает тема ЦОС, а именно программирование звуковых эффектов. Хотел сделать конволюционный корректор АЧХ колонок для своего усилителя (если вульгарно – аппаратная имплементация плагина Fruity Convolver). Показалось, что это несложно, просто микроконтроллером по I2S принимать данные (тем более есть библиотеки), им же считать площадь пересечения импульса и сигнала, суммировать результат, и по тому же I2S отправлять обратно в кодек, откуда сигнал дальше идёт на усилитель. В качестве МК планировал взять ESP8266, но поступила инфа, что он может оказаться глючным на частоте 160 МГц, поэтому в будущем обращу внимание на что-то типа STM32, у которых частота вроде как повыше, и работают они постабильнее. Сейчас хочется запустить связку МК-кодек да хоть на частоте дискретизации 8 кГц, тупо убедиться, что эта тема живая и продолжать что-то делать в этом направлении стоит.

Понимаю, что, скорее всего, AIC3254 – далеко не лучший кодек в плане качества звучания, но я работаю с такими вещами первый раз, решил начать с чего-то менее серьёзного, так как вероятность что-нибудь спалить высока.

Про miniDSP знаю, что он там есть, но от микроконтроллера не получится отказаться: мой импульс не полезет в память miniDSP (82 кБ у ESP8266 должно хватить, хоть и впритык), да и не очень охота разбираться в подключении его к компьютеру для настройки, нужны всякие преобразователи, а у меня только голый чип.

Ближе к сути. Загвоздка возникла на этапе подключения внешнего источника сигнала к АЦП. После 4 дней упорного поиска информации про этот кодек и изучения разных схем с операционными усилителями и кодеками, я так и не нашёл, как в моём случае использовать буферный усилитель для АЦП кодека и нужен ли он вообще? В даташите в типичном применении написано "To audio jack", то есть получается, что источник переменного напряжения (выход звуковой карты, плеера) нужно подключать напрямую на вход без буфера?
Но нам надо же сместить весь сигнал на +0.9 вольт (из даташита: C
ommon Mode = 0,9 V), а для этого необходим сумматор! Почему про него ни слова в даташите?

image.thumb.png.5a669a707dd8aca528955a2e38d2ed46.png
Стал искать в интернете. Набрёл на видос от тех же Texas Instruments, там показывали, как подбирать номиналы резисторов для того, чтобы Single-Ended сигнал "преобразовать" для дифференциального АЦП: 

Но тут не было сказано, в каких пределах нужно брать резисторы для максимального соотношения сигнал/шум, да и просто для нормальной работы схемы, а не от балды. И кодек там был, который принимает на вход значения от 0 до 5 вольт, а диапазон моего кодека – согласно даташиту +-0,75 вольт. Короче, по формулам из видео я подобрал номиналы резисторов, чтобы сигнал и «масштабировался» от 10 вольт (взял с запасом) до 1,6 вольт и смещался на 0,9 вольт. Получилось что-то такое:

image.thumb.png.c51cc7e8783b8f6084cc5d69e288ead4.png

Собрал эту схему на макетной плате. Операционники использовал какие были, TL072, минус питания соединял с общей землёй, на плюс подавал 12 вольт. Остальная часть схемы (делители из резисторов на неинвертирующих входах ОУ) работала от платы питания на базе AMS1117 на 1,8 вольт.

Подключил осциллограф, подаю сигналы со звуковой карты – постоянное смещение около 0,3 вольт, а сигнал начинал сильно искажаться при амплитуде в около +-0,4 вольт. Затем я случайно задел какой-то резистор на обратной связи, и неожиданно всё заработало примерно так, как я хотел – смещение было 1 вольт, а амплитуда сигнала не искажалась. Но было предельно много шума, и это никуда не годилось.

В общем, я в замешательстве. Резюмирую, что я в первую очередь хочу узнать:

1)      В моём случае нужно ли ставить ОУ на вход АЦП? Или для понижения амплитуды можно ограничиться просто делителем напряжения на резисторах?

a.      Если делитель напряжения, то какое должно быть в моём случае суммарное сопротивление резисторов?

2)      Что нужно использовать для ограничения напряжения на входе?

a.      ТОЛЬКО диоды Шоттки на 1,8 вольт

b.      Любые диоды Шоттки

c.      Стабилитроны на 1,8 вольт

d.      Любые стабилитроны

e.      Любые диоды

Поясняю, с чего такой вопрос. Как я понимаю схему защиты:

image.thumb.png.20be5cf0de58a0939646a593630e7f4b.png

Ситуация 1. Напряжение на входе находится в пределах от 0 до 1,8 вольт, ни один диод не открыт, состояние схемы по умолчанию.

Ситуация 2. Напряжение на входе больше допустимого. Так как ток идёт от большего потенциала к меньшему (от плюса к минусу), открывается верхний диод и начинает течь ток, тем самым напряжение на выходе падает.

Ситуация 3. Напряжение на входе меньше нуля, аналогично ситуации 2 начинает течь ток через нижний диод, и напряжение, можно сказать, возрастает до 0 вольт.

Тогда вопрос: если тут используется основное свойство диода (в одну сторону ток пропускать, в другую - нет), зачем во многих схемах используются именно стабилитроны (или Шоттке, если рассматривать согласно даташиту), у которых напряжение пробоя подбирается под допустимое напряжение? В чём я не прав? Где можно почитать о такой защите входов? В интернете находил 2 сайта, которые копировали друг друга, и там не было ответа на мой вопрос... либо я плохо искал.

3)      На сколько ом нужно ставить резистор на входе для ограничения тока в моём случае? И какой ёмкости конденсатор, чтобы не срезались слышимые низкие частоты?

Буду благодарен за любое прояснение хоть где-нибудь...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15 часов назад, Coberlight сказал:

Загвоздка возникла на этапе подключения внешнего источника сигнала к АЦП. После 4 дней упорного поиска информации про этот кодек и изучения разных схем с операционными усилителями и кодеками, я так и не нашёл

В даташите поискать, не?

image.thumb.png.86f82fb07c5945f95f094802f47c141d.png

 

Ну  и по остальным вопросам - читать даташит до просветления. Дальше вас ждет еще и конфигурация регистров этого кодека, там либо самому разбираться, либо писать на форум TI (у них есть специально обученный человек, который говорит: "ребята, не пытайтесь ничего понять, всё очень сложно, опишите мне вашу конфигурацию и я вам скину нужный вам дамп". Не знаю, скинет он или нет, я по первому пути шёл.)

 

15 часов назад, Coberlight сказал:

Собрал эту схему на макетной плате.

 Макетные платы здесь - не вариант, но вы и сами уже поняли.  

 про диоды: ставьте шоттки, в большом обратном напряжении смысла нет.  Обратите внимание на ток утечки.

Изменено пользователем tgruzd

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 часов назад, Coberlight сказал:

...микроконтроллером по I2S принимать данные... считать площадь пересечения импульса и сигнала, суммировать результат, и по тому же I2S отправлять обратно в кодек...

Я не знаю, умеет ли этот кодек одновременные передачу и прием I2S-потоков, а то может вся затея будет зарублена на корню. Проверьте этот момент.

Цитата

...то есть получается, что источник переменного напряжения (выход звуковой карты, плеера) нужно подключать напрямую на вход без буфера?

Да, напрямую. При этом в даташите есть органичение на размах входного напряжения - он равен 0.375Vrms и 0.5Vrms, что соответствует размаху 0.53В и 0.707В при напряжении AVdd 1.5В и 1.8В, соответственно.

Если выход карты выдает больше, то, как и требует даташит, нужно создавать на входе резисторный делитель напряжения, чтобы уменьшить амплитуду до указанных пределов. Ограничения на резисторы - в даташите.

Цитата

Но нам надо же сместить весь сигнал на +0.9 вольт (из даташита: Common Mode = 0,9 V), а для этого необходим сумматор! Почему про него ни слова в даташите?

В даташите ни слова о том, что Вам нужно что-то куда-то смещать. Там внутри уже все смещено куда нужно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем выше ответившим спасибо за информацию!

Кодек, скорее всего, поддерживает одновременные приём и передачу I2S, потому что на этой микросхеме один человек собирал гитарную примочку, и вроде как всё работало:

Про буферные усилители в даташите я почитал, внешние действительно не нужны, потому что внутри микросхемы уже всё в этом плане сделано.

Но насчёт делителя напряжения всё ещё есть вопросы.

Сначала в ДШ говорится о том, как подобрать разделительный конденсатор. Чтобы это сделать, надо найти эквивалентное входное сопротивление Req по формуле.

image.thumb.png.34b010f5f93c0272cdc8d75dbb125f1a.png

Я нашёл значения входного сопротивления для крайних значений, минимальное - 15 кОм, максимальное - 78 кОм. Получается, что конденсатора на 1 мкФ даже для крайнего значения должно хватить (частота среза ВЧ фильтра будет примерно 10,6 Гц).

image.thumb.png.d1dfd55dd62dfd690f491431f8f2bba7.png

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

image.thumb.png.cf0d47df72c0ca004b3796688a4d330c.png

И дальше объясняется про делитель напряжения и тут пишут, что сопротивление обоих резисторов при параллельном соединении должно быть намного меньше (<<) эквивалентного входного. Но делитель выступает ещё и в роли подтягивающего к земле резистора - если сопротивление будет невелико (например, 500 Ом, которые хоть как-то подходят под описание "намного меньше чем 15 кОм"), то будет повышенная нагрузка на источник сигнала! К тому же, намного меньше - это на сколько?

 image.thumb.png.6863b25ff6e508b7907b20059b5977f5.png

Читал много сайтов, где описывается подбор резисторов для делителя. Там тоже говорится, что получившееся сопротивление должно быть гораздо ниже, чем сопротивление входа.

 

Изменено пользователем Coberlight

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, Coberlight сказал:

Кодек, скорее всего, поддерживает одновременные приём и передачу I2S

Скорее всего - да.  Я работал с похожим кодеком tlv320aic3101, там точно работает.

2 часа назад, Coberlight сказал:

(например, 500 Ом, которые хоть как-то подходят под описание "намного меньше чем 15 кОм"), то будет повышенная нагрузка на источник сигнала! К тому же, намного меньше - это на сколько?

Если источник сигнала работает с наушниками, сопротивление которых десятки Ом, то про 500 Ом  переживать явно не стоит. 

В 08.11.2022 в 04:41, Coberlight сказал:

Сейчас хочется запустить связку МК-кодек да хоть на частоте дискретизации 8 кГц, тупо убедиться, что эта тема живая и продолжать что-то делать в этом направлении стоит.

Учитывая поставленные цели, я бы на вашем месте сейчас вообще бы не заморачивался точными расчётами: примерно прикинули, проверили по даташиту что расчёты не выходят за Absolute Maximum Ratings и вперёд! 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не ставьте ограничительные диоды так, как Вы собирались - на этих напряжениях получите кучу нелинейных искажений. Если хотите защищать вход - ставьте усилитель с питанием 1.8 В - это единственный разумный способ ограничить напряжение на входе кодека без искажений. Если у Вас будет на входе напряжение выше аналогового питания, получите большое межканальное пролезание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

58 минут назад, Alex11 сказал:

Не ставьте ограничительные диоды так, как Вы собирались - на этих напряжениях получите кучу нелинейных искажений.

Зачем пугаете человека? Он вроде не собирается в качестве ограничителей использовать диоды на сотню ампер. Пусть сначала сделает по даташиту. Дополнительный усилитель больше вреда чем пользы принесёт в данном случае, по моему скромному мнению.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...

Изменено пользователем Coberlight
отправил случайно, мискликнул по кнопке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Quote

использовать диоды на сотню ампер

А там на сотню ампер не надо. Даже хорошие диоды в такой схеме не работают. Если бы были еще два питания - на вольт выше и на вольт ниже - тогда другое дело. Мы каждый раз пытаемся сэкономить на таком усилителе, но каждый раз не получается. А здесь еще и питание аналоговое совсем низкое. У нас даже на 3.3 В все плохо. Но, опять же, вопрос количественный. Для меня нелинейных искажений больше 0.1% - уже очень плохо. Может быть, ТС'у 10% достаточно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

53 минуты назад, Alex11 сказал:

Для меня нелинейных искажений больше 0.1% - уже очень плохо.

Просто замечу что для усилителей HI-FI класса (DIN 45500) допускается до 1%. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 11/11/2022 at 7:39 PM, tgruzd said:

Просто замечу что для усилителей HI-FI класса (DIN 45500) допускается до 1%. 

"Гавно ваша музыка" (с)

ГОСТ 24388-88

image.thumb.png.080c5e3aefed70cabbfdf44602db2c05.png

УП - усилитель предварительный

УМ - усилитель мощности

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Набижали аудиофилы и всё испортили.  Напоминаю: человек поиграться с кодеком хотел

В 08.11.2022 в 04:41, Coberlight сказал:

на частоте дискретизации 8 кГц

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В общем, родил я схему. 

Schematic_aboba adc try 0_2022-11-12.pdf

Диоды решил пока не ставить: во-первых, их на такое напряжение (1.8 В) хрен достанешь, плюс, как было говорено, они просто будучи в цепи могут вносить нелинейные искажения. Усилителей, рассчитанных на напряжение 1.8 вольт, у меня нет, а TL072 не "заводится" даже от 5 вольт. В принципе, вход у меня подтянут к земле, поэтому уж слишком больших помех возникать не должно. А так как стоит делитель напряжения 10:1,8 (5,5 к 1), то уж звуковой картой, которая выдаёт чуть менее чем 8 вольт от пика до пика, спалить кодек маловероятно. Поправьте меня, если я не прав. 

Непонятки возникали, сколько и какой нужно ёмкости для всяких питаний и фильтров - в Typical Application написано одно, в Layout Example другое. Но потом посмотрел схемы других людей, и там как правило стоят по одному или два электролита на относительно высокую ёмкость (10 мкФ, 1 мкФ), и в параллель к ним добавляется керамический в районе 0.1 мкФ. Примерно так же я и поступал в своей схеме.

Питается это всё от преобразователя AMS1117 на 3.3 вольта, а также используется LDO внутри кодека (справа внизу).

С благословления добрых людей начну разводить плату.

А, вспомнил что ещё хотел узнать: для защиты от радиопомех даташит рекомендует ставить конденсаторы 33 пФ между аналоговым входом и землёй. Это должны быть обязательно плёночные, или с керамическими тоже канает? Что по нелинейным искажениям в таком случае? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, Coberlight сказал:

их на такое напряжение (1.8 В)

а их  и не надо на такое напряжение. 

 

В 08.11.2022 в 04:41, Coberlight сказал:

Поясняю, с чего такой вопрос. Как я понимаю схему защиты:

image.thumb.png.20be5cf0de58a0939646a593630e7f4b.png

вот, вроде правильно понимаете.  И где здесь нужен диод на 1.8В? Я бы поставил что-то вроде BAS70-04 ( что скажут аудиофилы? ) 

Диоды отпаять никогда  не поздно, заодно посмотрите насколько страшны эти искажения.  

 

3 часа назад, Coberlight сказал:

Это должны быть обязательно плёночные, или с керамическими тоже канает?

NPO норм будет. В сигнальных цепях избегайте X*R c их пьезоэффектом.

3 часа назад, Coberlight сказал:

С благословления добрых людей начну разводить плату.

Почитайте здешние темы по трассировке, много полезного

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...