Звуковые генераторы, фильтры и другие аналоговые устройства (кроме радиотехники и УНЧ)
Ответить

Помогите подобрать ЦАП для TTL

Пт ноя 05, 2021 20:23:40

Приветствую!
Мне нужен ЦАП с выходом по вольтажу в схему ТТЛ в DIP упаковке. Как единственного поставщика рассматриваю алиэкспресс, чтобы взять БУ штук 5 по-дешевке, обычно большая часть из них рабочая.

Цель данного ЦАП - быть "ногой" контроллера, у которого встроенный ЦАП использован не будет (причины умалчиваю). Из напряжений имею 5.25В питания +-5%, 5.00В гарантированное опорное напряжение настолько малых токов, что только для реф сгодится, но не для питания микросхемы. Ноль на нуле, аналоговая сторона ходит по той же земле. Надо 8 бит. Всё. И цифра и аналог в микросхеме должны на этом всем работать, никаких доп вольтажей не будет. Хотел R-2R "вручную" с горя сделать с защелкой на входе, но на защелке вольтаж будет непонятно какой, поэтому к тому же ключи делать, а там и еще что-то всплывет... в общем не хочу городить монстра, хочу микросхему...

Подобрал из всяких каталогов кандидатов. TLC7226 - офигенная штука, а на алике можно по 200р за 5 штук нарыть. И все там идеально, но пугает единственная строчка, где "Reference voltage, Vref" написано "от 0 до VDD–4". Это что же получается, мне ради того, чтобы рефу поставить на эталонные 5.00В нужно иметь питание от 9 вольт на VDD?? Да ну нафиг. Стал дальше искать аналоги, от ненавистного Максима нашел MX7226, думал вдруг там этой "особенности" не будет. Но нет, те же минус 4 вольта. Но там в даташите есть ссылка на MAX505\MAX506, которые якобы под TTL. И вот в их даташите пока что не нашел ни одного намека, что такая микросхема может мне не подойти. Может, плохо читал?...

Помогите пожалуйста определиться с этими вопросами:
1) TLC7226 я правильно понял, что не подойдет, или же плохо читал?
2) MAX505\506 подойдет или что-то пропустил? Если да, то есть ли аналоги вообще под мою "задачу"?

Re: Помогите подобрать ЦАП для TTL

Сб ноя 06, 2021 14:02:29

Если у вас такой контроллер, который имеет встроенный ЦАП (при питании 5В), наверняка есть и ШИМ. Вот его для формирования аналогового сигнала и используйте, быстродействие ведь вам не требуется, судя по отсутствию упоминаний об этом. Потребуется только фильтр на парочке ОУ по выходу ШИМ.

Re: Помогите подобрать ЦАП для TTL

Сб ноя 06, 2021 18:40:13

Andrey_B писал(а):Если у вас такой контроллер, который имеет встроенный ЦАП (при питании 5В), наверняка есть и ШИМ. Вот его для формирования аналогового сигнала и используйте, быстродействие ведь вам не требуется, судя по отсутствию упоминаний об этом. Потребуется только фильтр на парочке ОУ по выходу ШИМ.

Быстродействие требуется. Мне нужно получить полный спектр от ровно нуля до ровно 5 вольт с частотой до мегагерца и именно при помощи какой-то микросхемы 8-битного цап в дип корпусе. комбинацию цап плюс ОУ (в дип корпусе) я тоже рассматриваю (ну типа получить кастро сигнал на цапе, а потом помножить на ОУ до полного спектра), но как оказалось, ОУ под мои нужды найти такая же проблема, как и готовый цап с нужными характеристиками.

Вот судя по даташиту, MAX505 и MAX506 идеально подходят, но их фиг достанешь за адекватную цену (а полная цена таких вещей баксов 50, нунафиг)
Есть еще всякие экземпляры, дающие от 0 до 2.55 с собственным реф, вот если бы был адекватный ОУ, то можно было резисторами поделить обратную связь и превратить в с 0 до 5 на выходе ОУ. Но при попытке подобрать такой ОУ опять упираюсь в то, что все рыло-ту-рыло ОУ сделаны для копошения возле нуля прецизионно, а возле напряжения питания там под минус полтора входе макс на входе.

Такое ощущение, что проще создать в этой схеме нестабильный маломощный повышающий преобразователь "из гоуна и палок" на 7В и сразу все микросхемы меня полюбят))))

Re: Помогите подобрать ЦАП для TTL

Сб ноя 06, 2021 18:59:04

Быстродействие требуется. Мне нужно получить полный спектр от ровно нуля до ровно 5 вольт с частотой до мегагерца и именно при помощи какой-то микросхемы 8-битного цап в дип корпусе. комбинацию цап плюс ОУ (в дип корпусе) я тоже рассматриваю (ну типа получить кастро сигнал на цапе, а потом помножить на ОУ до полного спектра), но как оказалось, ОУ под мои нужды найти такая же проблема, как и готовый цап с нужными характеристиками.

Не пробовали писать попроще? К чему употреблять термины, смысла которых вы не понимаете?
Чтобы генерировать сигнал на выходе ЦАПа с верхней частотой 1 МГц, быстродействие ЦАПа должно быть не менее 0,5 мкс (дедушка Найквист так велел :))) ), но лучше с хорошим запасом, скажем 250...300 нс.
Ровно от нуля до питания НИ ОДИН ОУ вам сигнал не выдаст. Просто потому, что ВСЕГДА имеет дропаут относительно источника питания (плюса и общего). Причем величина дропаута еще зависит от нагрузки. Впрочем, у ЦАПа тоже зависит от нагрузки. И в даташите об этом недвусмысленно указано.
Чтобы создать амплитудную характеристику ЦАПа в полном раскрыве источника питания, придется добавить в схему несложный конденсаторный инвертор создающий минус относительно общего провода, а общее питание приподнять на примерно 1 вольт относительно требуемых 5 вольт. Схему запитать через лоудроп стабилизатор +5 Вольт.
Как то так.

Re: Помогите подобрать ЦАП для TTL

Сб ноя 06, 2021 21:09:08

Быстродействие требуется. Мне нужно получить полный спектр от ровно нуля до ровно 5 вольт с частотой до мегагерца и именно при помощи какой-то микросхемы 8-битного цап в дип корпусе. комбинацию цап плюс ОУ (в дип корпусе) я тоже рассматриваю (ну типа получить кастро сигнал на цапе, а потом помножить на ОУ до полного спектра), но как оказалось, ОУ под мои нужды найти такая же проблема, как и готовый цап с нужными характеристиками.

Не пробовали писать попроще? К чему употреблять термины, смысла которых вы не понимаете?
Чтобы генерировать сигнал на выходе ЦАПа с верхней частотой 1 МГц, быстродействие ЦАПа должно быть не менее 0,5 мкс (дедушка Найквист так велел :))) ), но лучше с хорошим запасом, скажем 250...300 нс.
Ровно от нуля до питания НИ ОДИН ОУ вам сигнал не выдаст. Просто потому, что ВСЕГДА имеет дропаут относительно источника питания (плюса и общего). Причем величина дропаута еще зависит от нагрузки. Впрочем, у ЦАПа тоже зависит от нагрузки. И в даташите об этом недвусмысленно указано.
Чтобы создать амплитудную характеристику ЦАПа в полном раскрыве источника питания, придется добавить в схему несложный конденсаторный инвертор создающий минус относительно общего провода, а общее питание приподнять на примерно 1 вольт относительно требуемых 5 вольт. Схему запитать через лоудроп стабилизатор +5 Вольт.
Как то так.

Фигня все это. Я хочу взять микросхему и чтобы она все умела)))
Ладно, если серьезно, мне по верху при должном подборе компонентов 5.5В должно хватить (если не преследовать идею использовать TLC7226). Получается, что задача сводится к поиску нормального ОУ, которых нет в природе. Они либо могут у нуля, либо с большим расстоянием от уровней. Для использования первых опять же городить 12 вольт, для использования вторых нужен хороший минус.

И, спасибо за наводку по поводу не импульсных преобразователей, я наверное всетаки буду генерить этот хороший минус. Например, -1.0В вполне хватит чтобы от нерадивого ЦАП с 0 - 2.55 выходом помножить через ОУ на 0 - 5.00 с погрешностью 10мВ. Но конечно это свинство, что на чисто цифровой схеме мне придется городить огород и только одна микросхема не имеющая аналогов и которую фиг достанешь, может это делать без геморроя.

Re: Помогите подобрать ЦАП для TTL

Сб ноя 06, 2021 21:13:57

Но конечно это свинство, что

Вы просто не в теме. Никакого свинства нет. Просто у вас порочная реализация своих хотелок. Микросхемы разрабатывают и продают ПОД ОПРЕДЕЛЕННЫЕ КЛАССЫ ЗАДАЧ. И это массовые задачи.
ЗЫ. А с какой целью вам потребовался размах синтезируемого сигнала от 0 до 5 вольт? :tea:

Re: Помогите подобрать ЦАП для TTL

Вс ноя 07, 2021 00:09:42

Но конечно это свинство, что

Вы просто не в теме. Никакого свинства нет. Просто у вас порочная реализация своих хотелок. Микросхемы разрабатывают и продают ПОД ОПРЕДЕЛЕННЫЕ КЛАССЫ ЗАДАЧ. И это массовые задачи.
ЗЫ. А с какой целью вам потребовался размах синтезируемого сигнала от 0 до 5 вольт? :tea:

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

С какой целью. Я делаю костыль))) именно так только и можно это назвать, не в плохом смысле. В общем я хочу сделать платку моложе 2000 года, на которой будет располагаться АЦП на 16 бит. Причем работающий "оффлайн", чтобы можно было в любой момент подцепиться к цифровой части и спросить: а скока там вольт на ноге по шкале от 0 до 5? Почему от 0 до 5 - потому что мне удобно с этим работать. И да, я не путаю ЦАП и АЦП, просто методику хочу попробовать конкретную, чем-то отдаленно напоминающую интегрирование. В программировании это называется двоичный поиск.

Алгоритм. Начиная с первого такта ЦАП1 получает единицу на старший бит, на выходе что-то там выдает аналоговое, мы это компарируем с исходным измеряемым сигналом. Если исходник больше или равен, то в результат пишем 1, если меньше, то 0. Далее закидываем итоговое значение (куда собираем итог) на вход ЦАП1 и после этого уже следующий разряд помладше ставим единицу и компарируем. И так далее все 8 раз, после чего имеем четкое цифровое представление нашего входного сигнала в виде 8 бит. Но нам же надо 16 бит (для чего???? да я хз, захотелось просто...). ЦАП1 сейчас имеет наш результат, что на выходе из ЦАП1 олицетворяет нижнюю границу. Прибавим 1 бит к нашему результату и поместим эту цифру в ЦАП2 (хорошо бы если ЦАП1 и ЦАП2 физически в одном чипе, чтобы их точность была наиболее близкой друг к другу). А для случая 11111111 мы не будем прибавлять единицу, а на выход ЦАП2 кинем реф 5.00В, то есть создадим границу искусственно. Итого что имеем: на вход ЦАП3 (она уже в другом чипе) подаем наш аналоговый сигнал, но в качестве земли берем выход ЦАП1, а в качестве реф берем выход ЦАП2. Ну и с ЦАП3 повторяем тоже самое, что ранее делали с ЦАП1. В итоге получаем 2 регистра по 8 бит, наполненные наиточнейшими измерениями. Или нет))) но не попробуешь - не узнаешь....

Спасибо, что выслушали)

Re: Помогите подобрать ЦАП для TTL

Вс ноя 07, 2021 06:53:55

Я делаю костыль))) ..... наполненные наиточнейшими измерениями. Или нет))) но не попробуешь - не узнаешь....
Спасибо, что выслушали)

Поздравляю, вы примерно через 60 лет переизобрели алгоритм последовательных приближений.
На основе этого алгоритма работают практически все АЦП с разрядностью 16 и ниже. Ну и оный алгоритм реализован в допотопной микросхеме К133ИР17.
Что касается попыток соединить последовательно 2 ЦАПа, дабы удвоить разрядность, то и тут вашего приоритета нет. Правда в этом случае ничего работать не будет. Ибо, во первых, компаратор младшего плеча будет пытаться работать со слишком малыми сигналами, а во вторых, склеить два ЦАПа по уровням так, чтобы не образовалось ступеньки и разрывов практически невозможно.
Поэтому не надо заниматься изобретением деревянного велосипеда с квадратными колесами.
В ДИПе 16-битный АЦП я вам не подскажу, поскольку он никому не нужен, особенно на высокой скорости преобразования, а в MSOP8 они имеются. Если учесть, что на выходе вам нужно всего 1МГц/16=63 кГц, то можно вообще отказаться от АЦП последовательных приближений (SAR ADC) в пользу сигма-дельта АЦП с разрядностью от 16 до 32 за гораздо меньшие деньги и в корпусе SOIC8.
Правда тут возникает вопрос схемотехники ДО АЦП, поскольку и с 16 разрядами это будет сделать не совсем тривиально.
Особенно если учесть ваши нынешние кондиции в этой области.
:tea: :)

Re: Помогите подобрать ЦАП для TTL

Вс ноя 07, 2021 12:41:19

Под ваши хотелки подойдет старый параллельный КР572ПА1 или AD7520, в нем даже 10 разрядов, а не 8. Несмотря на 15 вольт в документации, от 5 вольт тоже будет работать.

Re: Помогите подобрать ЦАП для TTL

Вс ноя 07, 2021 21:01:39

Под ваши хотелки подойдет старый параллельный КР572ПА1 или AD7520, в нем даже 10 разрядов, а не 8. Несмотря на 15 вольт в документации, от 5 вольт тоже будет работать.

Спасибо за наводку. Обрадовался содержимому даташита, пошел искать на алик и офигел с цен на нее, она оказалась там дороже, чем MAX506.. это конечно опечалило (учитывая, что у макса по 4 аута). А наш совочный аналог КР572ПА1 и того дороже обходится даже у барахольщиков. А вот смотрю аналоги - там якобы AD7523 и AD7533 считаются аналогами, и они легко доступны на алике рублей по 60, что заманчивее. Но у них у всех униполяр таблица содержит Vout = -Vref * ВходЦифра/МаксЦифра. Минус это что, простите? Типа я подал на вход 5.3В питание, 5.0В реф и 0.0В землю, а на выходе получу -4.9ххВ при максимальной цифре? И что мне с этим делать? Я бы хотел получить +4.9ххВ, то есть строго между землей и реф.

КРАМ писал(а):Поздравляю, вы примерно через 60 лет переизобрели алгоритм последовательных приближений.

Не вижу причин стесняться того, что я не был первым, не явно "соревнуясь" с великими людьми, родившимися за сто лет до меня. Так-то по жизни мне ни этот АЦП, ни ЦАП, девать некуда. Это игрушки любительские, для души. Поэтому взять готовый - никакого смысла в данном контексте не имеет. По поводу Вашего скептического отношения к результату по поводу 16 бит таким методом с моими познаниями электроники - полностью разделяю, но попробовать-то стоит. Если бы кто-то думал иначе, не научился бы ходить.

Re: Помогите подобрать ЦАП для TTL

Вс ноя 07, 2021 23:14:51

Но у них у всех униполяр таблица содержит Vout = -Vref * ВходЦифра/МаксЦифра. Минус это что, простите?

Минус - потому что на инвертирующем входе операционника. Вы посмотрите внутреннюю схему этого ЦАП. Матрица резисторов и коммутатор. Обычно при однополярном напряжении питания её используют как обычную матрицу R-2R, т.е. образцовое напряжение на Out2, землю на Out1, с Vref снимают выходное напряжение. Потом повторитель на ОУ.
Изображение
Рисунок из даташита на AD7520, для 7533 ограничения на (VRef=3.5 V max) в даташите нет

Re: Помогите подобрать ЦАП для TTL

Пн ноя 08, 2021 09:42:59

Но у них у всех униполяр таблица содержит Vout = -Vref * ВходЦифра/МаксЦифра. Минус это что, простите?

Минус - потому что на инвертирующем входе операционника. Вы посмотрите внутреннюю схему этого ЦАП. Матрица резисторов и коммутатор. Обычно при однополярном напряжении питания её используют как обычную матрицу R-2R, т.е. образцовое напряжение на Out2, землю на Out1, с Vref снимают выходное напряжение. Потом повторитель на ОУ.

Рисунок из даташита на AD7520, для 7533 ограничения на (VRef=3.5 V max) в даташите нет

Спасибо, очень достойно объяснили.

Выходит, что если подбирать ЦАП для черезжопного использования, то у него на выходе не должно быть повторителя, да и вообще он должен быть с токовым выходом, а не с напряженческим?

В этом случае нужен ОУ чтобы на выходе из реф повторять маааленький ток, выходящий оттуда, чтобы не прыгало напряжение. И вот я упираюсь в отсутствие таких ОУ, известных мне, в дип корпусе. И вот же интересно получается: допустим таких не существует. Но есть ОУ "с дифференциальном входом ля ля ля, и выходом включающим землю", а есть наоборот такие, что по входу прилеплены к земле, а выход рейл-ту-рейл. А не собрать ли из них один? Ну например LM358P на входе, к выходу делит сигнал пополам, а за ним этот выход хавает MCP602 I/P и обратно умножает на сигнал вдвое, допустим пользуясь обратной связью с того же делителя, что и первый. Хотя насчет модели второго я не уверен, но суть думаю Вы поняли. Оно реально?)) Или может есть какой-то ОУ, который может повторять сингал с 20-50мА на выходе без сильных искажений?

Re: Помогите подобрать ЦАП для TTL

Пн ноя 08, 2021 10:31:50

Если бы кто-то думал иначе, не научился бы ходить.

Если вашу аналогию проводить, то вы учитесь ходить на руках, при наличии ног. :)

Микросхема, подходящая под ваши странные хотелки называется MCP4921-E/P.

Re: Помогите подобрать ЦАП для TTL

Пн ноя 08, 2021 11:29:01

MCP4921-E/P.

Да, согласен. Единственное что, она управляется последовательным кодом, а не параллельным.
И вот я упираюсь в отсутствие таких ОУ, известных мне, в дип корпусе.

Здесь не нужно "20-50 мА". Вполне достаточно выходного тока обычного MCP6001 или MCP6002, они есть в корпусе DIP и Rail-to-Rail по входу и выходу.

Re: Помогите подобрать ЦАП для TTL

Пн ноя 08, 2021 14:36:22

MCP4921-E/P.

Да, согласен. Единственное что, она управляется последовательным кодом, а не параллельным.
И вот я упираюсь в отсутствие таких ОУ, известных мне, в дип корпусе.

Здесь не нужно "20-50 мА". Вполне достаточно выходного тока обычного MCP6001 или MCP6002, они есть в корпусе DIP и Rail-to-Rail по входу и выходу.


Output: Maximum Output Voltage Swing, VOL, VOH, VSS +25, — , VDD− 25mV, (VDD = 5.5V) - строчка из даташита. Мне эти 25мв по краям все испортят. Если по верху имеется запас, то по низу тогда одним нулем не обойтись. Хотя микросхема хорошая.
Может все же воспользоваться услугами icl7660? Как раз 10 штук нашел, просто рядом с кондером пихнуть и вместо нуля на питание ОПа посадить инвертированные -5.3В.


Andrey_B писал(а):
Если бы кто-то думал иначе, не научился бы ходить.

Если вашу аналогию проводить, то вы учитесь ходить на руках, при наличии ног. :)

Микросхема, подходящая под ваши странные хотелки называется MCP4921-E/P.

Спорт - такая же "бессмысленная" игра))) Эх, вот был бы этот ЦАП параллельным на вход...
Мне SPI никак не подойдет, т.к. при тестировании на вход от 8 до 16 раз закидываем новое значение, и пропихивать его через щелку в 1 бит это будет даже не на руках, на одном пальце ходить.

Re: Помогите подобрать ЦАП для TTL

Пн ноя 08, 2021 20:27:07

Может все же воспользоваться услугами icl7660? Как раз 10 штук нашел, просто рядом с кондером пихнуть и вместо нуля на питание ОПа посадить инвертированные -5.3В.

Да, хорошая идея, либо использовать для получения +-10 вольт преобразователь на конденсаторах от MAX232, MAX3232 (выходы V+, V-), это тоже очень распространенная микросхема
Изображение

Re: Помогите подобрать ЦАП для TTL

Пт ноя 12, 2021 02:18:05

Может все же воспользоваться услугами icl7660? Как раз 10 штук нашел, просто рядом с кондером пихнуть и вместо нуля на питание ОПа посадить инвертированные -5.3В.

Да, хорошая идея, либо использовать для получения +-10 вольт преобразователь на конденсаторах от MAX232, MAX3232 (выходы V+, V-), это тоже очень распространенная микросхема

А что если.... просто накупить замечательных ОУ? Запитать их от -1.0В до 5.3В. Поставить 8 штук на вход собственной R-2R схемы в качестве повторителя опорного 5.0В напряжения, на выходе обещает быть точный 5.0В сигнал. А чтобы имитировать ноль на входе, с ноги соответствующего ОУ сливать напряжение транзистором к нулю. Следовательно 8 таких транзисторов, которые допустим садятся на выходы D-триггера или регистра\буффера. Итого на входе R-2R будут чистые 0.0В и 5.0В. Значит на выходе при должном подборе резисторов будет равномерный 8-битный аналоговый сигнал. Ну и за ним пустить еще один повторитель на ОУ в качестве усилителя по току. Получится тот же ЦАП, только увесистый немного...
Только вот с коммутацией на входе все же как-то мудрено получается.

Re: Помогите подобрать ЦАП для TTL

Пт ноя 12, 2021 04:57:24

Поставить 8 штук на вход собственной R-2R схемы в качестве повторителя опорного 5.0В напряжения, на выходе обещает быть точный 5.0В сигнал.
Вы что понимаете под прилагательным "точный"? :)
Ну и к слову. В современных АЦП последовательных приближений применяется не резистивный, а емкостной ЦАП, одновременно выполняющий роль УВХ (захвата сигнала). Без УВХ АЦП подобного типа работать не будет.

Re: Помогите подобрать ЦАП для TTL

Пт ноя 12, 2021 14:39:24

Поставить 8 штук на вход собственной R-2R схемы в качестве повторителя опорного 5.0В напряжения, на выходе обещает быть точный 5.0В сигнал.
Вы что понимаете под прилагательным "точный"? :)
Ну и к слову. В современных АЦП последовательных приближений применяется не резистивный, а емкостной ЦАП, одновременно выполняющий роль УВХ (захвата сигнала). Без УВХ АЦП подобного типа работать не будет.

Точный это 5.0000В, откалиброванный по мультиметру при комнатной температуре, хотя бы. Емкостной я не осилю вручную сделать скорее всего. Вообще у меня "задача" сделать максимально самопальные, насколько позволят руки, ЦАП и АЦП, причем АЦП, как писал ранее, методом подбора при помощи ЦАПа. Хотя бы по 8 бит. Вот я сейчас в раздумьях, смогу ли все это чудо сделать с приемлемой точностью на R-2R вместо микросхемы ЦАП. Если делать самопальный R-2R, то кроме подачи входного напряжения на каждый бит ровно 0.0000В или ровно 5.0000В проблем пока не вижу. Если для этого использовать повторители на ОУ опорного напряжения, то остается вопрос как "повторить" 0.0000В минуя нижний свинг на выходе ОУ. Если резистором выход ОУ подтягивать к земле, то рискую исказить 5.0000В при единице. Если транзистором сливать в землю, то разве там получится прямо в ноль? Есть сомнения, что можно получить 0 вольт между эмиттером и коллектором. (просто опять же очень не хочется делать уровень ниже нуля, очень хочется обойтись однополярным питанием)

Добавлено after 3 minutes 8 seconds:
Да даже имея напряжения питания на ОУ -1.0В -- 5.0В, а также два опорных напряжения 0.0000В и 5.0000В, не совсем ясно, как можно с ювелирной точностью довести это опорное до ОУ, чтобы он повторил его.

Re: Помогите подобрать ЦАП для TTL

Пт ноя 12, 2021 14:57:42

ЦАП, запитанный от источника опорного напряжения 5.0000 V, не выдаст 5.0000 V. Или, если выдаст 5.0000 V, то не выдаст 0.0000 V, ибо сразу и то, и другое невозможно.
Ответить