Страница 1 из 1
динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 13:49:30
olegkomak
доброго времени суток .
есть 32 7 сигментных индикатора . как зажечь грамотней их от одной амеги ? драйверы типа MAX6958, MAX6959 (
http://www.gaw.ru/html.cgi/txt/ic/Maxim ... 958-59.htm) дорогие .
Остаются регистры сдвиговые . вот набросок
вопрос в том что будут ли регистры успевать заполниться байтами ведь динамическая индикация на 8 разрядов требует быстрого переключения ? Да плюс еще хотелось бы яркость регулировать временем "горения" разряда .
Или может разбить сегменты по 4 разряда и увеличить количество регистров до 8 штук ?
Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 13:54:21
ARV
olegkomak писал(а):вопрос в том что будут ли регистры успевать заполниться байтами ведь динамическая индикация на 8 разрядов требует быстрого переключения ?
ну, по самым скромным оценкам регистров, не способных работать хотя бы на частоте 1 Мгц сейчас практически не существует... вам хватит мегагерца для заполнения регистров?
Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 14:01:41
olegkomak
понял

спасибо - доходчиво

Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 14:04:38
olegkomak
значит - моно еще один регистр подцепить к уже имеющимся на картинке и с него включать общий провод сегментов ??
Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 14:39:56
qwerky
есть 32 7 сигментных индикатора . как зажечь грамотней их от одной амеги ?
Организовать в 4 строки по 8 индикаторов. Это 5 регистров - 4 на сегменты, 1 на выбор анода.
Пример 1 строки на 12 индикаторов:
Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 14:47:38
olegkomak
а для общего развития (а может и для применения) есть светодиодные индикаторы с встроенным дешифратором ? чтоб не 8 ног было (a,b,c,d,e,f,g) а 4 ноги .
Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 15:03:49
qwerky
olegkomak писал(а):а для общего развития (а может и для применения) есть светодиодные индикаторы с встроенным дешифратором ? чтоб не 8 ног было (a,b,c,d,e,f,g) а 4 ноги .
Возможно и есть, но мало распространенные - будут проблемы с доставабельностью и ценой. Развести 8 сегментов не намного слежнее 4х.
пример односторонней разводки выше приведенной схемы на 12 больших индикаторов:
Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 15:05:37
olegkomak
спасиб. дело не в разводке , а чтоб на один регистр повесить два сегмента

для перестраховки

Re: динамическая индикация и регистры сдвига
Добавлено: Чт апр 14, 2011 15:23:00
ploop
Re: динамическая индикация и регистры сдвига
Добавлено: Пт апр 15, 2011 08:59:05
BOB51
вполне реально: 8 сегментных регистров (по одному на знакоместо) и 4 анодных ключа

Re: динамическая индикация и регистры сдвига
Добавлено: Вс апр 17, 2011 08:10:37
olegkomak
рисую в протеусе динамическую индикацию для пробы.
мега8 + 4-х разрядный 7-ми сегментник. все работает на отлично. программа :
1. включили анод 1-го разряда
2. подали информацию на сегменты
3. пустой цикл for next чтобы разряд посветился немного
4. снимаем информацию с сегментов
5. выключаем анод 1-го сегмента
далее остальные разряды аналогично
теперь суть вопроса. собирая на макетной плате эту наипростейшию схему подобрал длительность пустого цикла где то около 50 шагов. при большем значении индикаторы мерцают.
далее - в протеусе мерцание индикаторов наблюдается при около 5000 шагов пустого цикла .
почему ??? очевидно что компьютер считает гораздо быстрее чем мега8 . тогда далее:
в протеусе нарисовал схему :
мега8 + 2-ва 4-х разрядных 7-ми сегментника + регистры сдвига (74hc164) .
программа :
1. наполняем регистры информацией
2. включаем аноды первых разрядов
3. пустой цикл для свечения
4. выключаем аноды первых разрядов
далее то же самое для остальных разрядов. получаем не то что мерцание - просто поочередное включение . значит в реале это будет вааще медленнее ??????
регистры сдвига наполняю по SPI интерфейсу ( SPI=SOFT )
Re: динамическая индикация и регистры сдвига
Добавлено: Вс апр 17, 2011 09:21:59
ploop
далее то же самое для остальных разрядов. получаем не то что мерцание - просто поочередное включение . значит в реале это будет вааще медленнее ??????
Напротив. В реале как раз должно быть нормально. Спаяйте макетку и попробуйте, нечего доверять всяким протеусам.
Re: динамическая индикация и регистры сдвига
Добавлено: Вс апр 17, 2011 09:23:37
olegkomak
макетку конечно спаяю и попробую . просто ток протеус учить начал а тут такие камни подводные...
Re: динамическая индикация и регистры сдвига
Добавлено: Вс апр 17, 2011 09:38:48
ARV
olegkomak писал(а):получаем не то что мерцание - просто поочередное включение . значит в реале это будет вааще медленнее ??????
в протеусе в статусной строке есть "локальные часы" - если там время тикает с такой же скоростью, как и на самом деле - у вас и в реале будет мерцание и тормоза. но обычно время протеуса в несколько (иногда - в несколько тысяч) раз медленнее реального, и то, что мигает в протеусе на самом деле мигает 1000 раз в секунду, т.е. в реале будет светиться постоянно.
к тому же вы можете поставить точки останова в нужных местах и "засечь" вермя между ними - так определите реальное время, прошедшее между обновлениями инфы на индикаторах.
Re: динамическая индикация и регистры сдвига
Добавлено: Вс апр 17, 2011 09:41:24
ploop
ЕМНИП, там еще можно тупо осциллографом подцепиться к выводу и посмотреть период.
Re: динамическая индикация и регистры сдвига
Добавлено: Вс апр 17, 2011 12:14:45
qwerky
ARV писал(а):olegkomak писал(а):получаем не то что мерцание - просто поочередное включение . значит в реале это будет вааще медленнее ??????
в протеусе в статусной строке есть "локальные часы" - если там время тикает с такой же скоростью, как и на самом деле - у вас и в реале будет мерцание и тормоза
не факт. динамическая индикация в протеусе не соответствует реальности, результат проверяйте только на реальном макете
Re: динамическая индикация и регистры сдвига
Добавлено: Вс апр 17, 2011 14:07:47
BOB51
можно и так...
а можно и по - другому(я выше предлагал)
разница в максимальном времени индикации - для "неперефорсированных" светодиодов максимальное число квантов "динамики" -32, затем изображение уже слабо видно даже в помещении
поэтому чем меньше число квантов модуляции, тем лучше
у Вас вроде как *12 (судя по описанию программы), зато на сегментный регистр требования ниже
моя версия - *4, но информация в регистровой линейке должна обновится за 0,02s/4=0,005s(50Гц=0,02s),
это потребует выделить 8*8=64 импульса сдвига данных +1 импульс перезаписи в защелку =65 импульсов обслуживания регистровой линейки за окно индикации 0,005s (0,005/65=0,0000769s на один служебный импульс регистра сдвига)
"мерцания" практически отсутствуют, но лишь в том случае, если подпрограмма динамической индикации выполняется как автономный фоновый процесс, не нарушаясь основной программой устройства - один из способов вписать фрагменты основной программы в отрезки 0,0000769~0.00008s (при том, что у большинства МК по умолчанию примерно 1 команда за 0,000001s это от 70 до 80 команд)
типовое решение линейка из 8 TPIC6B595(оно же 74hc595+uln2803) и анодые ключи на четырех L9821
(можно и TD6287AP на крайний случай)