Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Большое количество цифровых выходов
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
indela
Люди! подскажите какое нибудь решение кроме HC373+HC138 для того чтобы AVR микроконтроллер мог управлять больше сотни линий вывода? сетка неподходит.. может плис? но как ее программировать и что есть попроще?
iosifk
Цитата(indela @ Feb 6 2006, 15:25) *
Люди! подскажите какое нибудь решение кроме HC373+HC138 для того чтобы AVR микроконтроллер мог управлять больше сотни линий вывода? сетка неподходит.. может плис? но как ее программировать и что есть попроще?


Фраза "писаю в штаны" для человека в возрасте 1 год - куда ни шло, а для 25-ти летнего?
Вот так и здесь - сотня линий вывода на расстоянии 1см, например в одном кабеле или за 2-3 км?
Управление с какой скоростью? И что значит "управлять" - логически 0/1, или подавать 10А тока.

Научитесь спрашивать так, чтобы Вас понимали! Берегите наше время.
indela
Цитата
Научитесь спрашивать так, чтобы Вас понимали! Берегите наше время.


Прошу прощения, расчитывал что примера с HC373+HC138 будет достаточно для понятия того что нужно.. время: <1us, логический выход 0/1, 5вольт, в пределах платы... эти сигналы подаются в базы транзисторам..
BVU
На форуме поднимали вопрос о расширении периферийных портов для мокроконтроллера, но общее ммнение склонилось в сторону использования ПЛИС. К стати схемные решения (вариации) логики могут быть разные регистры+дешифратор, мультиплексоры+регистры+дешифратор...
indela
Цитата
К стати схемные решения (вариации) логики могут быть разные регистры+дешифратор, мультиплексоры+регистры+дешифратор...

а идея со схемой такая: два HC138 декодера формируют последовательно сигналы LATCH для регистров HC373, и авр последовательно записывает нужные состояния в 100/8=12 +1=13шт HC373-х. затем формирует общий сигнал OutputEnable.

насколько я понимаю это самое простое решение?
iosifk
Цитата(indela @ Feb 6 2006, 15:46) *
Прошу прощения, расчитывал что примера с HC373+HC138 будет достаточно для понятия того что нужно.. время: <1us, логический выход 0/1, 5вольт, в пределах платы... эти сигналы подаются в базы транзисторам..

Обычно ставят сдвиговый регистр длиной N-бит. Но Вы просите 1 мкс. Откуда такое время? Уточните...
А иначе, самая дешевая флэшовая ПЛИС.
indela
Цитата
Обычно ставят сдвиговый регистр длиной N-бит. Но Вы просите 1 мкс. Откуда такое время? Уточните...


Это для управления пиротехникой.. устройство должно формировать логические уровни на всех 100 входах за время <1мкс, затем может быть пауза до 1ms, во время котрой и предполагалось записывать новые значения в регистры...
А ПЛИС, какая вы думаете подошла бы?
Спасибо!
indela
Цитата
Обычно ставят сдвиговый регистр длиной N-бит.


А возможно ли напрямую подключить MOSI и SCK ко входу регистра и использовать SPI для записи?

З.Ы.
Просто не имел дела с такой логикой раньше..
indela
Всем спасибо, похоже решение найдено - по крайней мере для прототипа:
http://www.micrel.com/_PDF/mic5891.pdf
через SPI
AndyBig
Это стандартная задача для "бегущих строк". И сдвиговые регистры с параллельным выходом - стандартное решение smile.gif.
Можно использовать 74hc595 - дешевые, легко доставабельные.
aforestman
Насчет последовательного включения сдвиговых регистров, особенно для управления пиротехникой, я бы поостерегся. Выгорит триггер в середине цепочки и пойдет дальше 1. Вот ба-бах получится.
У нас так пускатели в шкафу летали, после чего мы эту идею похоронили.
indela
Цитата
Насчет последовательного включения сдвиговых регистров, особенно для управления пиротехникой, я бы поостерегся. Выгорит триггер в середине цепочки и пойдет дальше 1. Вот ба-бах получится.
У нас так пускатели в шкафу летали, после чего мы эту идею похоронили.


а ведь и правда получится! еще какой! smile.gif только в данном случае это подсветка пламени, так что просто красиво будет!!!

вообще использовал не микрел, а Allegro A6810 A6276, проще достать и дешевле.

http://www.allegromicro.com/sf/6276/

вообще использовал не микрел, а Allegro A6810 A6276, проще достать и дешевле.

http://www.allegromicro.com/sf/6276/
defunct
Как вариант (с LATCH) 1533ИР22 и два дешифратора ИД7.
beer_warrior
Цитата
Как вариант (с LATCH) 1533ИР22 и два дешифратора ИД7.

И засунуть его в Альтеру 3032 или 3064 :-)
Laksus
Цитата
aforestman Дата Вчера, 10:14
Насчет последовательного включения сдвиговых регистров,
особенно для управления пиротехникой, я бы поостерегся.
Выгорит триггер в середине цепочки и пойдет дальше 1. Вот ба-бах получится.
У нас так пускатели в шкафу летали, после чего мы эту идею похоронили.

______________________________
Я как раз собираюсь применить сдвиговые регистры 74hc595 для управления пускателями.
О такой проблеме не подумал.
Но, а что если просто проверять прохождение сигнала.
То есть завести с последнего в цепочке регистра сигнал
(в случае 74hc595 - сигнал Q`h с ножки 9 ) обратно на микроконтроллер
и добавив впереди группы байт которые надо записать в регистры лишний
(контрольный) байт, убедится что сигнал проходит нормально.
А при ошибке просто не выводить байты на защелки и выдать сигнал аварии.
Александр
2006 02 17
arttab
я как раз и закладоваю такую проверку в девайс. Идея проверки нормальная.
Подобная тема уже поднималась - на плисину советовали ибти (100 пинов чел хотел).
aforestman
На мой взгляд избыточный бит ("0") проблему не решит.
Ну не будет все включаться, а как найти где?
При параллельной шине ответ очевиден, при последовательной - геморой.
Для входных цепей параллельно-последовательное преобразование использовать можно, т.к. ошибка легко локализуется программно (в нашей системе по крайней мере), а для выходных - больше подходит параллельная запись. Для пущей уверенности можно прикрутить обратное чтение, если шина двунаправленная.
indela
Цитата
Я как раз собираюсь применить сдвиговые регистры 74hc595 для управления пускателями.
О такой проблеме не подумал.
Но, а что если просто проверять прохождение сигнала.
То есть завести с последнего в цепочке регистра сигнал
(в случае 74hc595 - сигнал Q`h с ножки 9 ) обратно на микроконтроллер
и добавив впереди группы байт которые надо записать в регистры лишний
(контрольный) байт, убедится что сигнал проходит нормально.
А при ошибке просто не выводить байты на защелки и выдать сигнал аварии.


точно, а этот сигнал можно завести прямо на MISO SPI AVRa.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.