-
- по моему то что Вы ориентируетесь на асинхронную схему это не очень удачное решение, тем более с кнопками. Нужно как то определять минимальное время обновления. Чисто асинхронное решение без лимитов на частоту обновления будет очень капризно. - Nikolay801_(27.04.2018 10:24)
- а есть еще TIC12400 и TIC10024 - General(27.04.2018 10:03, ссылка, ссылка)
- Огромное спасибо всем за идеи и советы! Пока остановился на STM32F030R8. Это "Up to 55 fast I/Os - All mappable on external interrupt vectors". - бомж(26.04.2018 11:17)
- Так они, как и в других STM32, "все" mappable, только не все "все одновременно". Если использовать PA0 как вход внешнего прерывания, линии 0 всех остальных портов в пролёте. - йцукен(26.04.2018 17:09)
- Угу. Французьский шарм, естить. Атмега более предсказуема для такого применеия. - Гудвин(26.04.2018 17:16)
- +1 - 0men(26.04.2018 17:11)
- у меня уважительная причина была - два дня без интернету. Идея с опозданием - 6-7 суммирующих резисторов и на вход АЦП. 30 входов АЦП спасут отца русской демократии. - Крок(26.04.2018 15:53)
- Роскомнадзор и Крока заблокировал? Што деесси... - SciFi(26.04.2018 16:02)
- Так они, как и в других STM32, "все" mappable, только не все "все одновременно". Если использовать PA0 как вход внешнего прерывания, линии 0 всех остальных портов в пролёте. - йцукен(26.04.2018 17:09)
- Делал давно махарайку с клавой для станка ЧПУшного. Сделали отдельно кнопки на сдвиговых регистрах, все их опрашивал один PIC12, и выдавал состояния клавиш по UART. Как-то так. Удобно было тем, что можно было втыкать тупо в комп, нажимать кнопки и Звероящер(26 знак., 26.04.2018 06:14)
- Чисто теоретически, 256 кнопок это всего 8 бит управления мультиплексором. Если гальваническая развязка не нужна, то период опроса в 256 или 128 мкс получить вполне реально. - AU08(26.04.2018 02:43)
- 74HC597 - Vit(26.04.2018 01:15)
- Неужели 74хх165 больше не выпускают? s_h_e(76 знак., 25.04.2018 21:54)
- А разве она позволяет вводить данные асинхронно? - бомж(25.04.2018 22:25)
- Вообще нет конечно, но минимальная длительность сигнала не задана, поэтому есть варианты, на каком уровне получать "асинхронность". s_h_e(249 знак., 25.04.2018 23:01)
- Ваще не понимаю нахрена нужны микросекунды если дребезг контактов миллисекундами измеряется. А уж когда пальцами в кнопки тычут, тут и сотня миллисекунд вполне себе нормальный интервал опроса. - Codavr(26.04.2018 08:13)
- Где ещё найти одновременно 200 пальцев? ;) - ВКПб(26.04.2018 08:38, )
- Спасибо, тоже идея неплохая - бомж(25.04.2018 23:15)
- Ваще не понимаю нахрена нужны микросекунды если дребезг контактов миллисекундами измеряется. А уж когда пальцами в кнопки тычут, тут и сотня миллисекунд вполне себе нормальный интервал опроса. - Codavr(26.04.2018 08:13)
- Вообще нет конечно, но минимальная длительность сигнала не задана, поэтому есть варианты, на каком уровне получать "асинхронность". s_h_e(249 знак., 25.04.2018 23:01)
- А разве она позволяет вводить данные асинхронно? - бомж(25.04.2018 22:25)
- Не надо кучи однокристаллок. Достаточно одной 44-48-ногой. Матрица 16х13 = 29 ног. Для распознавания любого сочетания нажатий нужно по диоду на каждую кнопку последовательно - argus98(25.04.2018 21:35)
- Задача - запомнить момент нажатия каждого из 200 кнопок? Какое время требуется? lloyd(56 знак., 25.04.2018 20:34)
- Застрелишься в матрице фиксировать одновременное нажатие множества кнопок - MBedder(25.04.2018 20:35)
- Я так понял, что "кнопки" - это фигурально. - LightElf(25.04.2018 20:38)
- Да, это выходы компараторов - бомж(25.04.2018 21:29)
- А вот теперь главное: 1. период опроса? 2. длительность сигнала на входе, который необходимо зарегистрировать? 3. Не устроит ли "триггерный" вариант? Т.е. засечь факт изменения уровня на входе между опросами. - Гудвин(25.04.2018 21:35)
- 1.Раз в 10 минут по команде извне. 2.Длительность меньше миллисекунды, точнее ещё не знаю. 3. Триггерный устроит, надо именно засечь факт срабатывания компаратора - бомж(25.04.2018 21:46)
- Точно ли асинхронность нужна? Если CPLD затактировать достаточно высокой частотой (период << микросекунды) не вариант? С каждой ногой связать триггер и функцию лог. И. Тактовый вход -- частота, сброс от МК, вход D-триггера -- выход-И-внешний fk0(2251 знак., 26.04.2018 01:16)
- Вообще ощущение, будто задача как раз для CPLD, но я, к примеру, вообще не шарю в *HDL. lloyd(124 знак., 25.04.2018 21:50)
- 1.Раз в 10 минут по команде извне. 2.Длительность меньше миллисекунды, точнее ещё не знаю. 3. Триггерный устроит, надо именно засечь факт срабатывания компаратора - бомж(25.04.2018 21:46)
- А вот теперь главное: 1. период опроса? 2. длительность сигнала на входе, который необходимо зарегистрировать? 3. Не устроит ли "триггерный" вариант? Т.е. засечь факт изменения уровня на входе между опросами. - Гудвин(25.04.2018 21:35)
- Да, это выходы компараторов - бомж(25.04.2018 21:29)
- Я так понял, что "кнопки" - это фигурально. - LightElf(25.04.2018 20:38)
- Застрелишься в матрице фиксировать одновременное нажатие множества кнопок - MBedder(25.04.2018 20:35)
- ну пары стм в 144 выводном корпусе хватит stm32f100zct нопример. - danuna(25.04.2018 20:29)
- У STM32 всего 16 входов EXTI. - LightElf(25.04.2018 20:33)
- а всякие расширители портов I2C не пойдут? они все могут генерить прерывание при изменении состояния любого входа. есть на 16 входов. есть и на 18, причем SPI - Alex68(25.04.2018 20:06)
- Они дороже - бомж(25.04.2018 20:14)
- Кучка мелких однокристаллок дешевле выйдет - LightElf(25.04.2018 19:59)
- А это идея! Спасибо! - бомж(25.04.2018 20:00)
- Теперь подскажите подходящие однокристаллки, чтобы дешёво и сердито :-) И чтобы все выводы генерили IRQ - бомж(25.04.2018 20:03)
- Если времянка позволяет, то можно не все с прерываниями: через диоды на одну ножку заводится активный уровень, а в прерывании выясняем, какой именно вывод сработал. Dingo(469 знак., 26.04.2018 06:51 - 07:21)
- у несовсем древних AVR есть PCINT на изменение состяния любого GPIO. Если считать стоимость в расчете на 1 GPIO, ATtiny48 видимо будет самым дешевым вариантом. - AlexG(26.04.2018 05:34)
- N76E003/STM8S003/STM32F030 - по микрухе на 8 кнопок вполне. Сигналы SPI CLK и SS объединить все вместе, MISO-MOSI собрать в гирлянду. Насчет IRQ по входам - а оно точно надо? Дребезг там, всякая прочая мутотень. Проче поллить каждую 1мс. Но если LightElf(65 знак., 25.04.2018 20:06 - 20:13)
- А прошивать каждую в отдельности или тоже гирляндой можно? Склоняюсь к STM32F030 - бомж(25.04.2018 20:10)
- Если однокристалки, я бы что-нить однопроводное с каскадированием замутил - удобнее собирать в цепочку нужной длины. - Гудвин(25.04.2018 20:10)
- Это к Евгению ;) Правда он все разную экзотику выискивает... - Гудвин(25.04.2018 20:04)
- Теперь подскажите подходящие однокристаллки, чтобы дешёво и сердито :-) И чтобы все выводы генерили IRQ - бомж(25.04.2018 20:03)
- А это идея! Спасибо! - бомж(25.04.2018 20:00)
- Явно проблема с постановкой Т.З. - misyachniy(25.04.2018 19:55)
- CPLD? - KLIM83(25.04.2018 19:55)
- В будущем да, но сейчас надо по-быстрому сделать образец всего на 8 кнопок. Поэтому нужно что-то легкодоступное - бомж(25.04.2018 19:59)
- Я бы и в будущем оставил однокристаллки - дешево и сердито. - LightElf(25.04.2018 20:19)
- Да - бомж(25.04.2018 20:25)
- Я бы и в будущем оставил однокристаллки - дешево и сердито. - LightElf(25.04.2018 20:19)
- В будущем да, но сейчас надо по-быстрому сделать образец всего на 8 кнопок. Поэтому нужно что-то легкодоступное - бомж(25.04.2018 19:59)