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

 
 
> Использование 16-сегментного индикатора с 6 цифрами в протеусе
D@rkD@iver
сообщение Apr 13 2013, 18:01
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 13-04-13
Пользователь №: 76 489



Здравствуйте всем. Тут такая проблемка.
В протеусе подлючил индикатор к AtMega128.Пытаюбсь вывести строку из 5 символов.
Вывожу каждый символ по очереди. Они отображаются но вот незадача, очень сильно видно как они моргают. То есть видно что в каждый момент только один символ зажжен.
Задержка междлу символами 100 мс. Если делаю меньше то они отображаются вообще некорректно.
Так вот вопрос как обычно работают с этими проклятыми индикаторами?
Или это глюк протеуса? И еще такой вопрос. Основной цикл занят олбновлением индикатора,но мне нужно выполнить кое-какой код раз в секунду.
Какэ то можно реализовать? Заранее спасибо
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
kovigor
сообщение Apr 13 2013, 18:25
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(D@rkD@iver @ Apr 13 2013, 21:01) *
Задержка междлу символами 100 мс. Если делаю меньше то они отображаются вообще некорректно.
Так вот вопрос как обычно работают с этими проклятыми индикаторами?
Или это глюк протеуса? И еще такой вопрос. Основной цикл занят олбновлением индикатора,но мне нужно выполнить кое-какой код раз в секунду.

Ключевые слова для поиска: "Динамическая индикация микроконтроллер".

100 мС - это много. Для 6 цифр скорее подойдут 10 мС.

Протеусу место в мусорном контейнере, ИМХО. АВР - это не тот случай, где нужны симуляторы.

Я вопроса вашего не понял. Но расскажу, как я решал похожую задачу. В основном цикле крутилась основная программа, которая выполняла кучу всяких действий, в том числе и вывод текста на индикатор. Для хранения этого текста использовался текстовый буфер на 6 символов, и основная программа, не задумываясь, просто писала в него символы, с каждым символом увеличивая счетчик записанных и еще не выведенных на индикатор символов на единичку. И все, что происходило с буфером потом, ее не касалось. Для отображения использовались обработчики от таймеров. Первый обработчик вызывался 100 раз в секунду и включал цифру за цифрой на индикаторе, реализуя динамическую индикацию. Второй же обработчик (его можно вызывать реже, например, 20 раз в секунду) проверял счетчик записанных в буфер и еще не выведенных на индикатор символов, и при отличии содержимого счетчика от нуля обновлял содержимое индикатора ...
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 20th July 2025 - 07:58
Рейтинг@Mail.ru


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