Jump to content

    

Преобразования BCD в двоичный код для умножающего ЦАП

Вопрос не в том как каскадно объединить счётчики. Вопрос как сделать чтобы счёт вниз шёл пропорционально двоичному числу умноженному на 10 и на 100. Как планируется формировать код для работы счётчика?

Серьёзно, не понятны Ваши трудности — в 3-разрядный десятичный счётчик, созданный посредством каскадного соединения трёх вышеуказанных ИС, переписываются данные с трёх вышеуказанных енкодеров, после чего он декрементирует в двоично-десятичном виде от данного значения до нуля, после чего выдаёт сигнал переноса. Одновременно с этим, т.е. по тому начальному сигналу переписи с энкодеров, сбрасывается 10-разрядный двоичный счётчик, также созданный посредством каскадного соединения других вышеуказанных ИС, после чего он инкрементирует в двоичном виде от этого нуля до появления того сигнала переноса с двоично-десятичного счётчика, по которому полученное таким способом значение уставки, теперь уже в нужном двоичном виде, переписывается из этого двоичного счётчика в защёлку ЦАП, после чего всё повторяется, т.е. снова вырабатывается сигнал переписи данных с энкодеров в десятичный счётчик и по нему же сброс двоичного счётчика, после чего включается их единый тактовый генератор, и т.д.

Share this post


Link to post
Share on other sites
Серьёзно, не понятны Ваши трудности — в 3-разрядный десятичный счётчик, созданный посредством каскадного соединения трёх вышеуказанных ИС,
Спасибо. Не рассмотрел что DOWN счётчики BCD :(

Share this post


Link to post
Share on other sites
Как бы это помягче... Выглядит глупостью. :rolleyes:

Если в схеме нет других программируемых элементов - то отказ от МК / ПЛМ вовсе не глупость, а очень разумное решение. Во-первых, не нужно решать вопрос программирования микросхем при производстве. Во-вторых, можно не беспокоиться о том, что через 10-15 лет вместо BCD кода на ЦАП начнет поступать какая-нибудь дичь.

Share this post


Link to post
Share on other sites
Можно так попробовать на CD4008:

20116248235662.gif

 

Спасибо, так и решил делать, только добавил еще один разряд "на будущее"

Share this post


Link to post
Share on other sites
Если в схеме нет других программируемых элементов - то отказ от МК / ПЛМ вовсе не глупость, а очень разумное решение. Во-первых, не нужно решать вопрос программирования микросхем при производстве. Во-вторых, можно не беспокоиться о том, что через 10-15 лет вместо BCD кода на ЦАП начнет поступать какая-нибудь дичь.

Кто хочет делать, ищет средства, кто не хочет делать, ищет причины.

С МК можно получить изделие гораздо более качественное, надежное, компактное, еще и дешевле.

И для "будущего" у него тоже возможностей куда больше.

Share this post


Link to post
Share on other sites

Долго ли коротко, но собрал я схему, приведенную в сообщении выше.

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

 

Использовал сумматоры CD74HCT283M, неиспользуемые входы переноса к земле подключил.

Неужели нужны еще подтяжки к земле на входах сумматоров от переключателей?

 

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

 

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

Share this post


Link to post
Share on other sites

А входы КМОП микросхем подтягивать к нулю (или единице) нужно. Резисторов на схеме нема.

Share this post


Link to post
Share on other sites

Да, добавил подтягивающие 1кОм резисторы на входы от переключателей и преобразование заработало стабильно.

Спасибо ViKo, в следующий раз попробую прежде чем спрашивать

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this