[uquote="vipien",url="/forum/viewtopic.php?p=3478746#p3478746"]тут[/uquote]Аа.. Ну, тогда с вами всё понятно...
МК ТУТ нарисован в качестве устройства, которое выдаёт двоичный код на ЦАП..
Чуть выше была аналогичная схема со счётчиком, моя схема вообще быда "без ничего"- только обозначены старший/младший разряд, а вы всё упираетесь в МК...
[uquote="vipien",url="/forum/viewtopic.php?p=3478498#p3478498"]Да какая разница что за схема. На выходе двоичный код параллельный 4 разряда.[/uquote]
Уже "теплее"....4 разряда могут управлять дешифратором 155ИД1 - преобразует в десятичный код. На выходы прилепим (их 16) резисторы по схеме 2R2 и получаем в результате 16 уровней (ступенек) потенциала. (напряжения) согласно входного кода (двоично - десятичного).
Для сглаживания ступенек можно применить конденсатор и получить в результате почти любую форму сигнала. Угловатую, округлую...какую пожелаешь!
Для остальных: Автор заказывал преобразование двоичного кода (4 разряда). Правильнее произнести - двоично - десятичный. Прежде , чем его преобразовать в уровни (правильные) сигнала, надо этот код преобразовать в десятичный. (16 уровней) через резисторную матрицу.
Прямое подключение к выходам с двоично- десятичным кодом приведет к абракадабре, ибо там лог. 1 может появлятся (и появляется) и по двум портам и по трем и по четырем и по отдельности...(смотрите таблицу истинности). А после дешифратора = строго по очереди. 0000 = 0, 0001 = 1. 0010 = 2, 0011 = 3. 0100 = 4 и так далее. До 15.
[uquote="vipien",url="/forum/viewtopic.php?p=3478782#p3478782"]Ты сам не понимаешь что пишешь. Это не то![/uquote]Вот почему некоторых (есть тут, на радиокоте, один персонаж) прямо крючит от слова "микроконтроллер" - настолько, что они за этим словом не видят остального, рационального? Неужели он страшнее числа 666 и Шайтана, вместе взятых? Всего-то надо было поглядеть на остальное, кроме МК.
Так вроде всё уже рассказали, разжевали и в рот положили. Матрица R2R, подключенная не к МК, а к выходам с параллельным двоичным кодом - это ЦАП и есть.
Brigadir писал(а):Прямое подключение к выходам с двоично- десятичным кодом приведет к абракадабре
А если теорию по R-2R преобразованию подтянуть? Глядишь и с двоичным кодом заработает как задумано. [/uquote]
Не пройдет: Двоично - десятичный код:
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
Десятичный код
0000000000000001
0000000000000010
0000000000000100
0000000000001000
и так далее, как видно - "единица" просто сдвигается, меняя уровень на цепочке R -2R на 1/16 напряжения (потенциала).
Попробуй это с двоичным кодом....для этого и придумали дешифратор!
[uquote="Brigadir",url="/forum/viewtopic.php?p=3479874#p3479874"]Двоично - десятичный код:
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111[/uquote]Это - обычный четырёхразрядный двоичный код. Двоично-десятичный совпадает с ним до цифры 9 включительно, остальные комбинации в двоично-десятичном запрещены.
Покажу, чем отличается двоично-десятичный и двоичный коды. Возьмём число... ну пусть будет 123. В двоичном виде оно записывается так:
01111011
в двоично-десятичном:
000100100011
[uquote="Brigadir",url="/forum/viewtopic.php?p=3479874#p3479874"]Десятичный код
0000000000000001
0000000000000010
0000000000000100
0000000000001000[/uquote]Это - тоже двоичный код, только уже 16-разрядный, если знакоместа рассматривать как биты. Или, ага, выход дешифратора. Можно, конечно, и с таким исхитриться и сделать АЦП... только нафига? Больше гемору и лишняя деталь (дешифратор).
И последнее. Если к выходам с двоичным кодом подключить R-2R матрицу, то получится нормальный АЦП. Это - медицинский факт, и не надо с этим спорить. Правда, есть одно условие: выходы должны быть кошерными, то есть со стабильными уровнями и достаточной нагрузочной способностью.
mickbell я конечно же ошибся в названии - двоичный код. но и Вы не без греха. Не АЦП, а ЦАП. Ну и прочий бред по поводу прямого подключения резисторного делителя напрямую к счетчику. Будем спорить? тогда в раздел МЯЯЯУ. там споры до мата доходят! А здесь - НИЗЗЗЯ!
А для АЦП используем компаратор.
А чтоб не заниматься глупостями - Автору советую просто купить ЦАП, коих на Чипе - огромная номенклатура - любых!
1. Поправка о двоичном коде принимается.
2. Ага, на почве ЦАПа и АЦП у меня проколы случаются.
3. В мяу не пойду, нехрен там делать. Здесь будем спорить, если надо. Без мата, но с аргументами. Почему бред? Обоснуйте. Только имейте в виду, что я лично, своими лапами, такой ЦАП делал. Правда, выходы были с МК, не со счётчика, но это несущественно. На выводы выдавались мгновенные значения синуса в двоичном коде, на выходе R-2R матрицы была синусоида обыкновенная.
А вот моё обоснование. Чем хороша матрица R-2R? Тем, что каждый следующий её вход имеет ровно в два раза меньшее влияние на выходной сигнал, чем предыдущий. В двоичном коде в точности то же самое: каждый следующий младший разряд имеет ровно в два раза меньшее влияние на значение числа, записанного этим кодом, чем предыдущий. Именно это свойство матрицы, совпадающее со свойством двоичного числа, и работает в данном случае.
[uquote="vipien",url="/forum/viewtopic.php?p=3478746#p3478746"]АлександрЛ, тут
[uquote="AndTer",url="/forum/viewtopic.php?p=3478532#p3478532"][/uquote][/uquote]
- уберите МК, у вас же уже есть паралельный код. ЦАП - это вот та група из восьми резисторов.
[uquote="mickbell",url="/forum/viewtopic.php?p=3480147#p3480147"]Чем хороша матрица R-2R? Тем, что каждый следующий её вход имеет ровно в два раза меньшее влияние на выходной сигнал, чем предыдущий.[/uquote]
Собственно, ЦАП с "весовыми резисторами" имеет точно такое же преимущество.. К тому же требует почти в 2 раза меньше резисторов, чем R2R, но это "в 2 раза меньше резисторов" и есть недостаток "весового ЦАПа" - каждый следующий резистор должен быть ровно в 2 раза больше педыдущего - то есть, например- 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 килоом - а некоторых номиналов просто НЕ СУЩЕСТВУЕТ..
В то же время матрица R2R может быть легко собрана, пи этом используются одинаковые резисторы, или резисторы с номиналом, различающимся в 2 раза- такие "в природе" ЕСТЬ..
Я не ставил задачу сравнить два исполнения ЦАПов, мне надо было только показать небредовость R-2R. Что касается несуществующих номиналов: любое значение набирается при необходимости. Но разговор-то не об этом, а просто Анатолия вразумить надо было.
[uquote="AndTer",url="/forum/viewtopic.php?p=3478532#p3478532"][/uquote]
Чтобы эта схема правильно работала, нужен порт с выходами с открытым коллектором или открытым стоком и номинал наименьшего из резисторов должен быть много больше сопротивления ключа... Максимальный ток на выходе не может превысить допустимый ток нагрузки ключа даже вдвое...
АлександрЛ писал(а):Собственно, ЦАП с "весовыми резисторами" имеет точно такое же преимущество.. К тому же требует почти в 2 раза меньше резисторов, чем R2R, но это "в 2 раза меньше резисторов" и есть недостаток "весового ЦАПа"
Как раз напротив недостатком такого ЦАП является немыслимое количество резисторов при равной разрядности. Например при разрядности 16 бит для R-2R матрицы понадобится 33 резистора, против 32767-ми.
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. Всегда с уважением, Александр.