Двоично-десятичная система

Radik
Рядовой
Сообщения: 4
Зарегистрирован: 06.10.2015{, 08:18}
Репутация: 0

Двоично-десятичная система

#1

Сообщение Radik » 12.10.2015{, 22:47}

Не могу спроектировать из существующих блоков двоично-десятичный счетчик, двоично-десятичный дешифратор. Как народ обходится без этих функций? Может быть такие блоки никому не нужны?

Добавлено (12.10.2015, 22:47)
---------------------------------------------
Со счетчиком разобрался. Смутила информация по блоку, что выход счетчика Q - аналоговый, хотя на блоке выход обозначен как V. Или я вообще ничего не понимаю, или есть какое то несоответствие.
Последний раз редактировалось Radik 12.10.2015{, 21:23}, всего редактировалось 1 раз.

DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18.10.2015{, 13:51}
Репутация: 5
Откуда: Кривой Рог

Двоично-десятичная система

#2

Сообщение DWD » 24.10.2015{, 16:47}

У меня тоже проблемы со счётчиком, посему прошу совета...

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

Этот же сигнал поступает на два блока сравнения, на других входах которых выставлены константы 0 и 15. В результате счётчик может менять своё состояние в пределах от 0 до 15.

Так вот, узел сравнения работает как и положено - досчитал до нуля и остановился. Теперь можно считать только в другую сторону - но досчитав до 15 тоже останавливается с возможностью счёта только на уменьшение. И считает с дискретностью 1. То есть, от конца до конца всего насчитывается 15 положений.

А вот при управлении генератором есть непонятка - генератор управляется счётчиком так, будто импульсы идут через один и счётчик выдаёт последовательность 0, 2, 4, 6, 8...24, 26, 28. Теже 15 значений, но через один.

Вопрос - почему один и тот же выход счётчика по разному управляет компаратором и генератором?

И попутный вопрос - в программе не нашёл ригистров. Они где-то спрятаны или их просто нет?
Последний раз редактировалось DWD 24.10.2015{, 16:54}, всего редактировалось 1 раз.
Изображение

Airis
Сержант
Сообщения: 175
Зарегистрирован: 24.09.2015{, 07:27}
Репутация: 0

Двоично-десятичная система

#3

Сообщение Airis » 24.10.2015{, 18:14}

Дляхранение данных, программе есть переменные, массивы и EEPROM.
По
поводу "проблемы со счётчиком" - выложите сам проект, хотя бы
как картинку.

DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18.10.2015{, 13:51}
Репутация: 5
Откуда: Кривой Рог

Двоично-десятичная система

#4

Сообщение DWD » 24.10.2015{, 19:48}

Это простая мигалка на 8 светодиодов - "Бегущий огонь" в одну сторону в течение 20 секунд,  затем просто горят все светодиоды в течение 10 секунд, и снова мигание...

Двумя кнопками (больше-меньше) должна меняться частота мигания в диапазоне от 1Гц до 15Гц. 

Всё управляется, всё мигает, но частота меняется не так как задумывалось - с дискретом 1мс+1мс=2мс =...

Вот я осёл!
Начав расписывать проблему, сам увидел причину - частота генератора задаётся длительностью импульса, а не периода, по этому при изменении состоянии счётчика на 1, период генератора меняется на 1+1=2, 2+2=4, 3+3=6 и т.д. По этому и частота меняется не так, как задумывалось...

Но вопрос остаётся - как исправить, что использовать?

 Я, так сказать, учусь - всего-то треться схема после мигания светодиода при нажатии кнопки и регулировки его яркостью переменным резистором. Так что не пинайте сильно, а то рассыплюсь... Как сказал здесь кто-то. Изображение
Вложения
Migalka.flp
(287.44 КБ) 66 скачиваний
Изображение

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Двоично-десятичная система

#5

Сообщение Олег » 28.10.2015{, 00:13}

Попробуйте так, должно работать, мне проверить негде.
Вложения
MigalkaRev1.flp
(306.09 КБ) 62 скачивания

DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18.10.2015{, 13:51}
Репутация: 5
Откуда: Кривой Рог

Двоично-десятичная система

#6

Сообщение DWD » 28.10.2015{, 14:42}

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

Работает.

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

P.S.
Олег, Ваш вариант я проверил, работает точно так же, как и мой первый. В общем, не подходит.
Но и не нужно уже. Второй вариант работает как нужно. На нём и остановлюсь.
Спасибо.
Вложения
Migalka2.flp
(558.12 КБ) 71 скачивание
Последний раз редактировалось DWD 28.10.2015{, 15:11}, всего редактировалось 1 раз.
Изображение

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Двоично-десятичная система

#7

Сообщение Олег » 28.10.2015{, 15:02}

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

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Двоично-десятичная система

#8

Сообщение Олег » 28.10.2015{, 22:24}

DWD писал(а):Олег, Ваш вариант я проверил, работает точно так же, как и мой первый. В общем, не подходит.Но и не нужно уже. Второй вариант работает как нужно. На нём и остановлюсь.
Спасибо.
И не будет работать, вот что значит 8 лет без практики Изображение . Вот этот вариант должен работать, посмотрите может где пригодится.
Вложения
MigalkaRev2.flp
(308.64 КБ) 61 скачивание

DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18.10.2015{, 13:51}
Репутация: 5
Откуда: Кривой Рог

Двоично-десятичная система

#9

Сообщение DWD » 29.10.2015{, 12:07}

Олег, действительно, всё просто. Идея лежала на поверхности - нужно было просто выходное состояние счётчика принять за частоту и преобразовать её в длительность импульса. Всё! :)

Только мне нужно будет умножать не на 1000, а на 500, что бы получить длительность импульса, а не период.
Упростив, получаем простую (для нас) операцию t=500/Q,
где t - это длительность импульса (мс), а Q - текущее состояние счётчика (1...16).

Переделаю, так как этот вариант проще и красивее.
Спасибо. Изображение
Последний раз редактировалось DWD 29.10.2015{, 12:19}, всего редактировалось 1 раз.
Изображение

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Двоично-десятичная система

#10

Сообщение Олег » 29.10.2015{, 13:11}

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

gore-40
Рядовой
Сообщения: 29
Зарегистрирован: 04.10.2015{, 18:02}
Репутация: 0

Двоично-десятичная система

#11

Сообщение gore-40 » 29.10.2015{, 16:45}

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

Аватара пользователя
scadapack
Рядовой
Сообщения: 83
Зарегистрирован: 07.09.2015{, 05:18}
Репутация: 5
Откуда: Степногорск
Имя: Вячеслав

Двоично-десятичная система

#12

Сообщение scadapack » 29.10.2015{, 17:20}

Можно использовать операции с битами "чтение бита". Делается параллельная цепочка этих команд с выбором бита по порядку. На выходе получится двоичный код.

gore-40
Рядовой
Сообщения: 29
Зарегистрирован: 04.10.2015{, 18:02}
Репутация: 0

Двоично-десятичная система

#13

Сообщение gore-40 » 29.10.2015{, 18:24}

а можно пример (нарисуй) пожалуйста.

Аватара пользователя
Alex54
Сержант
Сообщения: 281
Зарегистрирован: 06.09.2015{, 09:06}
Репутация: 1
Откуда: Москва

Двоично-десятичная система

#14

Сообщение Alex54 » 29.10.2015{, 18:34}

А если просто генератор и цепочка счетных триггеров. Получается двоичный код с любым выходным весом.
НО вы не сможете его сбросить. Так как входа сброса не предусмотрено.
Я проверял такое построение. Ставил на выходе дешифр+индикатор.
С Уважением Alex

Аватара пользователя
DerAlex
Лейтенант
Сообщения: 437
Зарегистрирован: 06.09.2015{, 08:39}
Репутация: 11
Откуда: Новосибирск

Двоично-десятичная система

#15

Сообщение DerAlex » 29.10.2015{, 21:36}

2898384.png
Добавлено (29.10.2015, 21:36)
---------------------------------------------
Можно также сделать блок пользователя, гораздо проще рисунок будет.
аврора

Аватара пользователя
Alex54
Сержант
Сообщения: 281
Зарегистрирован: 06.09.2015{, 09:06}
Репутация: 1
Откуда: Москва

Двоично-десятичная система

#16

Сообщение Alex54 » 30.10.2015{, 08:44}

DerAlex

Вы что-то перепутали цифру с аналогом. Во первых показанная вами программа с цифровыми сигналами
не работает. Во вторых при указанном вами аналоговом входе и подаче синуса на выходе как и положено
мы имеем работу АЦП аналогового входа.
Попозже я скину счетчик у которого будет и дешифратор на новом блоке -матрице.
Вложения
8884436.jpg
5971267.jpg
8816797.jpg
С Уважением Alex

Аватара пользователя
DerAlex
Лейтенант
Сообщения: 437
Зарегистрирован: 06.09.2015{, 08:39}
Репутация: 11
Откуда: Новосибирск

Двоично-десятичная система

#17

Сообщение DerAlex » 30.10.2015{, 08:57}

Ничего я не перепутал.Я показал принцип работы а не конкретное устройство. Входной сигнал может быть любым .Это может быть выходной сигнал счетчика.

Добавлено (30.10.2015, 08:57)
---------------------------------------------
Шире нужно смотреть на вещи. Изображение
аврора

Аватара пользователя
Alex54
Сержант
Сообщения: 281
Зарегистрирован: 06.09.2015{, 09:06}
Репутация: 1
Откуда: Москва

Двоично-десятичная система

#18

Сообщение Alex54 » 30.10.2015{, 08:58}

Я не увидел принципа работы. Я не буду с вами спорить. Просто сделаю схему и покажу. Как можно
подавать на контроллер цифровые сигналы. И снимать нормальные во временном отношении имп.

Да мы и так смотрим широко на эти прибамбасы по цифре в программе. Все пытаемся скроить из мухи слона.
Последний раз редактировалось Alex54 30.10.2015{, 09:33}, всего редактировалось 1 раз.
С Уважением Alex

Аватара пользователя
DerAlex
Лейтенант
Сообщения: 437
Зарегистрирован: 06.09.2015{, 08:39}
Репутация: 11
Откуда: Новосибирск

Двоично-десятичная система

#19

Сообщение DerAlex » 30.10.2015{, 09:55}

scadapack писал(а):Можно использовать операции с битами "чтение бита". Делается параллельная цепочка этих команд с выбором бита по порядку. На выходе получится двоичный код.
Вот это высказывание было проиллистрируровано.Так в чем несоответствие?

Добавлено (30.10.2015, 09:54)
---------------------------------------------
Автор программы FLProg все продумал. Нет необходимости повторять один в один какую то цифровую схему.Сначала я тоже не понял и пытался этим заниматься.Оказывается есть и другие возможности добиться результата.

Добавлено (30.10.2015, 09:55)
---------------------------------------------
Есть множество вариантов решения одной и той же проблемы.Совершенно не важно как это сделать главное чтобы работало.
аврора

Аватара пользователя
rw6cm
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

Двоично-десятичная система

#20

Сообщение rw6cm » 30.10.2015{, 09:55}

Чё спорить...
Сделать так.
1553051.flp
(197.28 КБ) 78 скачиваний
И не ломать голову Изображение
Вложения
8334485.png
Win10-64, FLProg (portable)

Ответить

Вернуться в «Логика»