Свежие обсуждения
Микроконтроллеры

Динамическая сегментная индикация

1 2

Возникла идея организовать динамическую сегментную индикацию на светодиодных индикаторах.
Имеется восемь 4-х разрядных индикаторов с общим анодом
Используется МК, 5 регистров сдвига + uln2803 (6-ой регистр на прием от кнопок)
Программист из меня, как из матроса балерина, поэтому, кое как сляпал программку и запустил в Протеусе.
Результаты : Один из восьми сегментов включен 3мс. Соответственно 8 сегментов обновляются за 24 мс, как показывает осцилограф Протеуса.
Вопросы: Эти показатели достаточны для непрерывного отображения? Нужно ли, именно,при сегментной индикации гашение индикаторов перед обновлением данных?

Не могу прикрепить файл, почему-то.

 

Ну для "незаметности мерцания" считается нужно обновление информации с частотой не менее 50 Гц,, т.е. в течении 20 мс. А 24 мс чуть больше
Гашение...? Если запись в регистры происходит за микросекунды, а сегмент в разряде горит целых 3000 мкск, то подсветку "негорящих" сегментов очень трудно будет заметить

 

C записью в регистры у мня трудности. У меня как-раз и происходит запись 40-бит в регистры за 3 мс,затем защелкивание регистра. Пока идет запись, предидущий сегмент светит. Как-то так.

 

Не совсем понял, как у вас реализована динамическая индикация, но личный опыт показывает что при индикации по знакоместам перед "сменой" индикатора, предыдущий нужно погасить, иначе имеет место быть паразитная засветка сегментов.

 

При динамической индикации по знакоместам, я знаю что нужно гасить индикатор. А вот при сегментной - не понятно мне.
Уточню реализацию: В один момент времени включен сегмент "А", к примеру, во всех знакоместах сразу,где этот сегмент необходим для отображения естественно. В следующий момент включен сегмент "В". Так 8 раз, это включая точку. Итого 32 разряда (или знакоместа) отобразились всего за 8 проходов. 1 проход - передача 40 бит в регистры.
При обычной реализации (по знакоместу) необходимо будет 32 прохода для отображения. 1 проход - тоже 40 бит передачи вроде бы. Это правильно или нет? (8 бит на семисегментный код и 32 бита для выбора знакоместа, в случае если регистр кода и регистры адресов в одной связке)
Плюсы вроде бы есть, хочу узнать это.

 

не знаю чем вас привлекла сегментная индикация...
время открытия ключей даже теоретически неодинаково сагмен а горит в 90% случаев а g толко в 10.... значит токи в цепи будут прыгать от 16ма до несколких ампер...придется питание на индикацию отделять от основного дроселями неслабыми...
в осталном может и проще оно....
сейчас че толко китаюзы неприменяют для развертки-быстрая камера с 300к/с позволяет расщифровать индикацию....
такие затейники эти китайцы
есть вариант одновременого вывода всех разрядов с нужны кодом...и попарный вывод

 

Понятно - принцип тот-же - да, при смене сегмента надо гасить.

 

Я гашу, хоть время смены и очень маленькое, но глаз замечает либо паразитную засветку либо мерцание на индикаторе.

 

Вот похожее от нашего участника http://ahtoxa.net/micros/tiny/leds/
Есть исходники.

 

решение i2c /spi
[jhjob для выноса индюка на oktat далеко от основнова мк