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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> 7 сегменгный индикатор
JimBaton
сообщение Oct 25 2008, 22:19
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Выдаю из порта контроллера Мега 8 число от 1 до 20.Хочу преобразовать чтобы показывалось число от 1 до 20 на 2ух семисегментных индикаторах.Подскажете?Счегл начать?Как реализовать чисто железным путем без всяких кодов

Сообщение отредактировал JimBaton - Oct 25 2008, 22:21
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 25 2008, 22:39
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Аппаратно? Тогда вам нужны дешифраторы двоично-десятичного кода в код для семисегментных индикаторов. Типа К176ИД2, К176ИД3. Плюс преобразователи двоичного кода в двоично-десятичный. Только зачем все это аппаратно делать, если у вас есть микроконтроллер?
Сделайте программно таблицу преобразования, где порядковый номер символа в таблице будет соответствовать символу, индицирующемуся на индикаторе. Делов-то laughing.gif
Go to the top of the page
 
+Quote Post
gormih
сообщение Oct 25 2008, 22:45
Сообщение #3


nofb
***

Группа: Свой
Сообщений: 430
Регистрация: 18-05-06
Из: Москва, Зеленоград
Пользователь №: 17 218



Цитата(JimBaton @ Oct 26 2008, 02:19) *
Выдаю из порта контроллера Мега 8 число от 1 до 20.Хочу преобразовать чтобы показывалось число от 1 до 20 на 2ух семисегментных индикаторах.Подскажете?Счегл начать?Как реализовать чисто железным путем без всяких кодов

Сочувствую Вашей непросвещенности :-)
То что Вы ищете называется дешифратором. Поищите на досуге. Можно вот сюда глянуть - если отечественное не смущает.

В сети куча примеров как это реализуется программно. Гугл никто не отменял.


--------------------
Это не то что вы подумали ...

Go to the top of the page
 
+Quote Post
777777
сообщение Oct 26 2008, 13:35
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(JimBaton @ Oct 26 2008, 01:19) *
Выдаю из порта контроллера Мега 8 число от 1 до 20.Хочу преобразовать чтобы показывалось число от 1 до 20 на 2ух семисегментных индикаторах.Подскажете?Счегл начать?Как реализовать чисто железным путем без всяких кодов

Микроконтроллеры сушествуют как раз для того, чтобы делать все программно безо всякого дополнительного железа, ибо оно стоит денег. Выводи в 2 порта 2 числа, уже преобразовынные в 7-сегментный код и будет тебе щастте. А еще лучше - в один порт с динамической индикацией.

Сообщение отредактировал 777777 - Oct 26 2008, 13:36
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Oct 26 2008, 15:06
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



Ну просто не все бывают такие просвященные как gormih , бывают и такие которые только учатся и поэтому спрашивают совета более опытных людей.Я тут подумал что действительно создать таблицу и подогнать ее под 7 сегментный индикатор будет проще.Просто я к тому, что эта таблица занимает свободную память контроллера, а она такая дефицитная.
Go to the top of the page
 
+Quote Post
bloodden
сообщение Oct 26 2008, 15:59
Сообщение #6


Бывалый
***

Группа: Validating
Сообщений: 375
Регистрация: 19-10-05
Из: Kiev, UA
Пользователь №: 9 853



Цитата(JimBaton @ Oct 26 2008, 18:06) *
Ну просто не все бывают такие просвященные как gormih , бывают и такие которые только учатся и поэтому спрашивают совета более опытных людей.Я тут подумал что действительно создать таблицу и подогнать ее под 7 сегментный индикатор будет проще.Просто я к тому, что эта таблица занимает свободную память контроллера, а она такая дефицитная.

Эта таблица (на 10 цифр + немного знаков) будет занимать флешь, которой не так уже и мало. И поиском на форуме специально для новичков находится ОЧЕНЬ много тем, где подобное, а в некоторых случаях и аналогичное, рассматривается по многу раз. ИМХО.


--------------------
Заходите кому надо на мой сайт
Go to the top of the page
 
+Quote Post
assm
сообщение Oct 26 2008, 18:27
Сообщение #7





Группа: Новичок
Сообщений: 6
Регистрация: 27-07-06
Из: Ukraine,Kiev
Пользователь №: 19 157



Цитата(bloodden @ Oct 26 2008, 18:59) *
Эта таблица (на 10 цифр + немного знаков) будет занимать флешь, которой не так уже и мало. И поиском на форуме специально для новичков находится ОЧЕНЬ много тем, где подобное, а в некоторых случаях и аналогичное, рассматривается по многу раз. ИМХО.


Эта таблица будет занимать 10 байт и содержать 7-сегментные коды от 0 до 9.
Если хотите буквы E, d, с,... то около 20 байт.

Если индикатора всего 2- их можно напрямую повесить на выходы портов через резисторы.
В программе- нужно значение 16-ричное преобразовать в 10-чное, тоесть в формат представления чисел BCD. ( каждые 4 бита байта шифруются как числа 0..9, тоесть максимальное число представленое байтом- 99.)
Есть простые алгоритмы такого преобразования, их легко найти в интернете.
Более сложный режим- динамическая индикация- потребует знания программирования таймера,
но индикаторов можно будет подключить значительно больше.
Go to the top of the page
 
+Quote Post
JimBaton
сообщение Oct 26 2008, 21:43
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 17-12-07
Пользователь №: 33 355



я понимаю как напрямую дать код на порт и прикрутить к нему индикатор.Таблицу смогу построить, но как прикрутить к порту 2 индикатора.Порт должен показывать двузначное число.Как я понимаю все равно нужно какое-то железо
Go to the top of the page
 
+Quote Post
bloodden
сообщение Oct 26 2008, 22:32
Сообщение #9


Бывалый
***

Группа: Validating
Сообщений: 375
Регистрация: 19-10-05
Из: Kiev, UA
Пользователь №: 9 853



Цитата(JimBaton @ Oct 27 2008, 00:43) *
я понимаю как напрямую дать код на порт и прикрутить к нему индикатор.Таблицу смогу построить, но как прикрутить к порту 2 индикатора.Порт должен показывать двузначное число.Как я понимаю все равно нужно какое-то железо

Нужна пара ключей на транзисторах. Вся идея в том, чтоб на 50% времени зажигать первый разряд с первой цифрой, а потом менять код и включать на вторые 50% времени общий электрод второго разряда.
ЗЫ: Поиском пользуйтесь. За эти 7 часов с моего последнего поста Вы даже теорию не искали.


--------------------
Заходите кому надо на мой сайт
Go to the top of the page
 
+Quote Post
777777
сообщение Oct 27 2008, 05:57
Сообщение #10


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(assm @ Oct 26 2008, 21:27) *
Если индикатора всего 2- их можно напрямую повесить на выходы портов через резисторы.

Не согласный я. Хотя нагрузочная способность выхода 20 мА, но суммарный ток всех выходов не должен превышать 80 мА - об этом тоже не стоит забывать.

Сообщение отредактировал 777777 - Oct 27 2008, 06:23
Go to the top of the page
 
+Quote Post
Herz
сообщение Oct 27 2008, 07:47
Сообщение #11


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Цитата(777777 @ Oct 27 2008, 07:57) *
Не согласный я. Хотя нагрузочная способность выхода 20 мА, но суммарный ток всех выходов не должен превышать 80 мА - об этом тоже не стоит забывать.
А больше вряд ли и понадобиться. Так что соглашайтесь. smile.gif
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Oct 27 2008, 10:41
Сообщение #12


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Цитата(JimBaton @ Oct 26 2008, 03:19) *
Выдаю из порта контроллера Мега 8 число от 1 до 20.Хочу преобразовать чтобы показывалось число от 1 до 20 на 2ух семисегментных индикаторах.Подскажете?Счегл начать?Как реализовать чисто железным путем без всяких кодов

Индикатор можно подключить примерно так, я думаю хоть и индикатор на три знакоместа, но идея понятна.
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
Alex2578
сообщение Oct 27 2008, 14:15
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 20-02-07
Пользователь №: 25 515



Вот еще, как раз твой вариант под динамическую индикацию.
Прикрепленные файлы
Прикрепленный файл  FPP1.pdf ( 9.05 килобайт ) Кол-во скачиваний: 149
 
Go to the top of the page
 
+Quote Post
777777
сообщение Oct 28 2008, 12:10
Сообщение #14


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(Herz @ Oct 27 2008, 10:47) *
А больше вряд ли и понадобиться. Так что соглашайтесь. smile.gif

Одному сегменту надо 10 мА, всего их 14, следовательно максимальное потребление - 140 мА. Где я неправ?

Цитата(Stanislav_S @ Oct 27 2008, 13:41) *
Индикатор можно подключить примерно так, я думаю хоть и индикатор на три знакоместа, но идея понятна.

Шо, прямо вот так - выход порта на анод семи светодиодов? А если там горят все сегменты - ты будешь тянуть из ноги 80 мА?

Цитата(Alex2578 @ Oct 27 2008, 17:15) *
Вот еще, как раз твой вариант под динамическую индикацию.

Это уже получче, можно только посоветовать заменить транзистор на p-канальный полевик, можно избавиться от четырех резисторов. А если в одном корпусе, как IRF7104, то и место сэкономишь.
Go to the top of the page
 
+Quote Post
Alex2578
сообщение Oct 28 2008, 12:25
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 20-02-07
Пользователь №: 25 515



Цитата(777777 @ Oct 28 2008, 15:10) *
Это уже получче, можно только посоветовать заменить транзистор на p-канальный полевик, можно избавиться от четырех резисторов. А если в одном корпусе, как IRF7104, то и место сэкономишь.


Только 2 резистора можно сэкономить. Вторые пара все равно будет нужна для подтяжки затвора.
Go to the top of the page
 
+Quote Post

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

 


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


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