Jump to content

    
Sign in to follow this  
Claw

Вывод на индикатор

Recommended Posts

Как вывести полученное двузначное число ,допустим в результате перемножения, на 4-ёх разрядный 7-ми сегментный индикатор, используя десятичную систему счисления? Т.е., к примеру, вывести на индикатор результат произведения 9x9 = 81? Как отделить десятки от единиц и вывести их отдельно на каждый разряд?

Share this post


Link to post
Share on other sites
Как вывести полученное двузначное число ,допустим в результате перемножения, на 4-ёх разрядный 7-ми сегментный индикатор, используя десятичную систему счисления? Т.е., к примеру, вывести на индикатор результат произведения 9x9 = 81? Как отделить десятки от единиц и вывести их отдельно на каждый разряд?

Если всего двузначное, то может проще всего через ПЗУ 128х16 - сразу в два 7-сегментных кода. Иначе надо сначала преобразовывать в bcd код, либо делением на степени 10 (здесь просто на 10 - частное десятки, остаток единицы), либо заменить деление последовательным вычитанием 10 или параллельным сравнением со сразу всеми десятками (10,20,...90).

Share this post


Link to post
Share on other sites

Да, всего двузначное...

 

может проще всего через ПЗУ 128х16 - сразу в два 7-сегментных кода

Не совсем понятно как это :blush:

Edited by Claw

Share this post


Link to post
Share on other sites
Да, всего двузначное...

Не совсем понятно как это :blush:

Исходим из предположения, что Вы знаете какие сегменты надо зажигать для отдельной десятичной цифры 0-9. Дальше пишется на ПК вспомогательная программка, которая перебирая числа от 00 до 99 для каждого числа формирует 14-битное число, состоящее из двух 7-битных (для 7 сегментов индикатора), каждое из которых соответствует Вашему знанию, как отобразить одну десятичную цифру (одна - частное от деления полного числа на 10, другая - остаток от деления). Полученная готовая таблица 100 значений по 14 бит далее напрямую используется в устройстве, наиболее логично в качестве предзаданной таблицы ПЗУ.

Share this post


Link to post
Share on other sites
либо заменить деление последовательным вычитанием 10 или параллельным сравнением со сразу всеми десятками (10,20,...90).

Дык второй вариант будет с какой-то стороны менее громоздким. 9 компараторов и сумматор и по мелочи. На VHDL это будет какой-нить свитч на 10 строк.

Share this post


Link to post
Share on other sites

Добрый день!

Если мне не изменяет память, то есть такая команда в микроконтроллере как "Десятичная корекция". Алгоритм работы команды не помню, но достаточно простой и не сложный. Попробуйте покапать в этом направлении

Share this post


Link to post
Share on other sites

ok, покаoпаю) и спасибо за ссылку barabek ;)

 

Отдельно спасибо ViKo за предоставление услуг исправления ошибок, лучше даже, чем в MS Office.

Edited by Claw

Share this post


Link to post
Share on other sites

Обращаюсь а автору темы и модераторам.

Картинку подписи уберите. Здесь не детский сад.

А заодно и мое сообщение.

Есть слова "копать" и "капать". В данном случае следует употреблять первое.

 

Отдельно спасибо ViKo за предоставление услуг исправления ошибок, лучше даже, чем в MS Office.

Можете на меня полагаться и в будущем. :)

Share this post


Link to post
Share on other sites

В-принципе, можно создать таблицу - массив из 256 элементов, каторая выдаст нужные сегменты трехразрядного индикатора в зависимости от числа - индекса в этом массиве. И пусть компилятор сам ужимает ресурсы, как сможет.

Это уже высказал ys05. Извиняюсь, недосмотрел.

Share this post


Link to post
Share on other sites
без проблем.

 

Тогда ищете темы bin_bcd, bcd_bin и просто копируете (корректируя разрядность в чисто поведенческом описании)

http://electronix.ru/forum/index.php?showt...amp;hl=bin2_bcd

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this