реклама на сайте
подробности

 
 
> Преобразования BCD в двоичный код для умножающего ЦАП
syuha
сообщение Sep 12 2017, 19:21
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 31-07-08
Пользователь №: 39 327



В нашем устройстве для генерации DC уставок (уровней) использовается умножающий ЦАП AD7845
В текущей ревизии устройства используем DIP свитчи для установки бинарного кода.
Линии интерфейса заземлены, изменение кода приводит к изменению выходного напряжения.

В следующей итерации хотелось бы заменить метод ввода на что-то более удобоваримое. Выбор пал на ручные переключатели, которые thumbwheel switches, например Omron A7D-106-1.
В идеале хотелось бы иметь три разряда, которыми можно установить напряжение 0-999мВ. Нужного масштабирования можно добиться, подобрав нужное опорное напряжение для ЦАП.

Выход переключателя BCD, а вход ЦАП это двоичный код, встает вопрос конвертации.
Нашел микросхемы, дающее преобразование BCD в двоичный код (DM74184/DM74185A и SN54184/SN74184). Даташит дает схемы подключения для преобразования нескольких разрядов в двоичный код.
Но все эти микросхемы настолько старые, что их не купить, а альтернативы я не нашел. Есть ли идеи у сообщества как реализовать это на современной элементной базе?
Казалось бы, задача тривиальная и должна быть достаточно распростроненной чтобы было какое-то элегантное решение без использования программируемой логики.

Есть ЦАП c BCD входом, но я не нашел подходящих для моей задачи. Есть еще переключатели с HEX выходом, но по удобству использования это не намного лучше двоичных переключателей на плате.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Plain
сообщение Sep 13 2017, 00:37
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



На счётчиках будет неспешно, но минимум компонентов для любой разрядности — десятичный счётчик загружается уставкой и уменьшает её до нуля, а синхронный с ним двоичный наоборот; счётчики ещё делают и продают — '190/'192 и '191/'193/'590 соответственно.
Go to the top of the page
 
+Quote Post
MegaVolt
сообщение Sep 13 2017, 08:27
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783



Цитата(Plain @ Sep 13 2017, 03:37) *
На счётчиках будет неспешно, но минимум компонентов для любой разрядности — десятичный счётчик загружается уставкой и уменьшает её до нуля, а синхронный с ним двоичный наоборот; счётчики ещё делают и продают — '190/'192 и '191/'193/'590 соответственно.
Не очень понял схему. Точнее для первого десятичного разряда всё понятно. А как быть со вторым и третьим? Там же нужно сразу считать по 10 и по 100 это как реализовывать?
Go to the top of the page
 
+Quote Post
Plain
сообщение Sep 13 2017, 22:05
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



Цитата(MegaVolt @ Sep 13 2017, 11:27) *
Не очень понял схему. Точнее для первого десятичного разряда всё понятно. А как быть со вторым и третьим? Там же нужно сразу считать по 10 и по 100 это как реализовывать?

В паспортах указанных ИС имеются примеры их каскадного соединения, т.е. увеличения разрядности.

Цитата(_pv @ Sep 13 2017, 11:34) *
мелкая CPLD нынче стоит как один такой двоичный счётчик

17$ за AD7845, 22$ за 3 шт. A7D-106 — очевидно, для автора важны не деньги, а время.
Go to the top of the page
 
+Quote Post
MegaVolt
сообщение Sep 14 2017, 08:39
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783



Цитата(Plain @ Sep 14 2017, 01:05) *
В паспортах указанных ИС имеются примеры их каскадного соединения, т.е. увеличения разрядности.
Вопрос не в том как каскадно объединить счётчики. Вопрос как сделать чтобы счёт вниз шёл пропорционально двоичному числу умноженному на 10 и на 100. Как планируется формировать код для работы счётчика?
Go to the top of the page
 
+Quote Post
Plain
сообщение Sep 14 2017, 11:41
Сообщение #6


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



Цитата(MegaVolt @ Sep 14 2017, 11:39) *
Вопрос не в том как каскадно объединить счётчики. Вопрос как сделать чтобы счёт вниз шёл пропорционально двоичному числу умноженному на 10 и на 100. Как планируется формировать код для работы счётчика?

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

Сообщений в этой теме
- syuha   Преобразования BCD в двоичный код для умножающего ЦАП   Sep 12 2017, 19:21
- - Flood   Если требование о неиспользовании программируемой ...   Sep 12 2017, 21:02
- - MegaVolt   Цитата(syuha @ Sep 12 2017, 22:21) Казало...   Sep 12 2017, 21:02
- - _pv   4) SST39VF402C 1$ https://www.digikey.com/pr...   Sep 12 2017, 21:39
- - syuha   Спасибо за ответы! Согласен, любое решение от...   Sep 12 2017, 22:28
|- - ViKo   Цитата(syuha @ Sep 13 2017, 01:28) Соглас...   Sep 13 2017, 08:36
||- - MegaVolt   Цитата(ViKo @ Sep 13 2017, 11:36) Как бы ...   Sep 13 2017, 09:02
||- - Flood   Цитата(ViKo @ Sep 13 2017, 11:36) Как бы ...   Sep 15 2017, 19:22
||- - ViKo   Цитата(Flood @ Sep 15 2017, 22:22) Если в...   Sep 16 2017, 05:23
|- - Serhiy_UA   Цитата(syuha @ Sep 13 2017, 02:28) Соглас...   Sep 13 2017, 17:28
|- - _pv   Цитата(Plain @ Sep 14 2017, 04:05) 17...   Sep 14 2017, 07:07
|- - MegaVolt   Цитата(Plain @ Sep 14 2017, 14:41) Серьёз...   Sep 14 2017, 13:28
- - _pv   счётчикам ещё нужен клок, а 16ти разрядная паралле...   Sep 13 2017, 08:34
- - VCO   Смоделировать статический декодер в CPLD и перенес...   Sep 14 2017, 07:17
- - iliusmaster   Можно так попробовать на CD4008:   Sep 14 2017, 18:02
- - syuha   Цитата(iliusmaster @ Sep 15 2017, 01:02) ...   Sep 15 2017, 21:37
- - syuha   Долго ли коротко, но собрал я схему, приведенную в...   Feb 9 2018, 22:36
- - ViKo   А входы КМОП микросхем подтягивать к нулю (или еди...   Feb 10 2018, 05:22
- - syuha   Да, добавил подтягивающие 1кОм резисторы на входы ...   Feb 12 2018, 23:58


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th June 2025 - 18:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01441 секунд с 7
ELECTRONIX ©2004-2016