Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
18.11.2012, 23:11
|
|
Прохожий
Регистрация: 18.11.2012
Сообщений: 5
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Вывод числа на семисегментный индикатор
Здравствуйте. Столкнулся с такой проблемой. Есть 4 семисегментных индикатора. Нужно вывести число, например 2012. Я вывожу каждое число по отдельности(записываю 1 и 0 в биты, и так каждую цифру) но задача состоит в том, что бы вывести это число одной командой. И так выводить любое число. В команде записал любое число, и его вывело. Мы делаем это на микроконтроллере tini 2313.Подскажите пожалуйста более-менее понятным языком
|
|
|
|
18.11.2012, 23:22
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2009
Адрес: Украина, Харьков
Сообщений: 762
Сказал спасибо: 108
Сказали Спасибо 67 раз(а) в 67 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
lexa1424, как вариант сделай одну подпрограмму, в которую будешь передавать нужное число, а она уже будет выводить его на индикатор.
Подпрограммой разбиваешь передаваемое число на символы и выводишь каждый символ на свое знакоместо.
|
|
|
|
18.11.2012, 23:33
|
|
Прохожий
Регистрация: 18.11.2012
Сообщений: 5
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
Сообщение от swat24
|
lexa1424, как вариант сделай одну подпрограмму, в которую будешь передавать нужное число, а она уже будет выводить его на индикатор.
Подпрограммой разбиваешь передаваемое число на символы и выводишь каждый символ на свое знакоместо.
|
Я просто не совсем понимаю этого алгоритма, как разбить число на символы с помощью подпрограммы?
|
|
|
|
18.11.2012, 23:47
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
давай с начала.
Схему (если есть) в студию.
Код сюда же.
|
|
|
|
18.11.2012, 23:55
|
|
Почётный гражданин KAZUS.RU
Регистрация: 30.09.2006
Сообщений: 1,560
Сказал спасибо: 158
Сказали Спасибо 661 раз(а) в 431 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
Сообщение от lexa1424
|
Я просто не совсем понимаю этого алгоритма, как разбить число на символы с помощью подпрограммы?
|
Например, нахождением остатка от деления на 10.
Берем число, получаем остаток от деления его на 10: 1234%10==4 - это будет крайний левый символ. Далее делим - получим второй символ и т.д., пока начальное число не станет равным нулю.
|
|
|
|
18.11.2012, 23:56
|
|
Прохожий
Регистрация: 18.11.2012
Сообщений: 5
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
Сообщение от omercury
|
давай с начала.
Схему (если есть) в студию.
Код сюда же.
|
Нету ни схемы ни кода, речь идёт о том, что что бы вывести четырёхзначное число на индикатор, мы выводим каждую из четырёх чисел по отдельности в виде 0b00000110. А задание заключается в том, что бы одной командой мы выводили все четыре знака сразу
|
|
|
|
19.11.2012, 00:01
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
Беда в том, что tini 2313 8-ми разрядный МК и вывести сразу все 4 цифры одной командой не получится.
Последний раз редактировалось alvadep; 19.11.2012 в 00:04.
|
|
|
|
19.11.2012, 00:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,003
Сказал спасибо: 0
Сказали Спасибо 4,946 раз(а) в 2,374 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
lexa1424,
принцип револьвера знаешь?
револьвер 4-х зарядный, зарядил(передал данные в буфер)-вернул барабан(инициализировал таймер, счетчик данных, порты, прерывания)-нажал курок(прерывание, вывод символа).
правда, патроны(данные) еще надо подготовить, но это другая история
Сообщение от lexa1424
|
Кому не сложно, пожалуйста приведите маленький кусочек кода. Например вывод числа 258 на индикатор
|
ога, строк на 50 асма
Последний раз редактировалось jump; 19.11.2012 в 00:07.
|
|
|
|
19.11.2012, 00:06
|
|
Прохожий
Регистрация: 18.11.2012
Сообщений: 5
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
Кому не сложно, пожалуйста приведите маленький кусочек кода. Например вывод числа 258 на индикатор
|
|
|
|
19.11.2012, 00:06
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,003
Сказал спасибо: 0
Сказали Спасибо 4,946 раз(а) в 2,374 сообщении(ях)
|
Re: Вывод числа на семисегментный индикатор
Сообщение от lexa1424
|
одной командой мы выводили все четыре знака сразу
|
макрос подойдет? внешне будет выглядеть как одна команда
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:40.
|
|