Comments 24
Для любителей «схемотехнических извращений» есть хорошая, не потерявшая актуальность книжка «Шевкопляс Б.В. Микропроцессорные структуры»
+1
Есть специальные микросхемы — называются расширители ввода/вывода,
I/O Expander. Работаю обычно через i2c интерфейс от Максим, например, очень удобно
и не нужно лишнего кодить.
Микросхемы
I/O Expander. Работаю обычно через i2c интерфейс от Максим, например, очень удобно
и не нужно лишнего кодить.
Микросхемы
+9
Удобные, но дешевле будет отдельный МК для этих целей. Например те же STM8 (14 рублей в розницу)
+1
Дешевле, но это еще одна программа, еще один программатор (возможно средства отладки), дополнительный разъем программирования на плате
+1
В проектах, за которые платят, куда важнее площадь на плате, которую займет дополнительная микруха
+1
А в промышленных масштабах за такие решения надо отрезать хвост по самую голову :)
+2
В проектах, за которые платят деньги, учитывается куча факторов. И площадь на плате тут один из последних, если суть проекта не в габаритах. Экономя один цент на площади, можно потратить один бакс на более дорогую микру. Или же наоборот. Или снизить надёжность устройства до того, что оно работать будет только на стенде.
0
Вы правы, они дороже, но защелки все равно не супер решение, так как
1) они все же требуют больше ног МК, чем расширители ввода/вывода
2) расширители умеют обрабатывать переходы уровней, когда нужно действовать по событию
3) масштабирование проекта на сдвиговых более затруднительно.
Да и вообще, нужно уходить от использования дискретных компонентов — это касается особенно если Вы работаете в серию.
1) они все же требуют больше ног МК, чем расширители ввода/вывода
2) расширители умеют обрабатывать переходы уровней, когда нужно действовать по событию
3) масштабирование проекта на сдвиговых более затруднительно.
Да и вообще, нужно уходить от использования дискретных компонентов — это касается особенно если Вы работаете в серию.
0
Во-первых, дороже, во вторых расстояние. Больше чем на 30см расширитель не потянешь, а эта моя схема надежно работает в автомобиле на 3-метровом проводе. Изначально туда планировался LIN на MCP2021, но жаба — страшное животное…
0
Не хочу рекламировать, но довольно элегантные решения подключения кнопок и светодиодов можно поискать на easyelectronics , там тоже затрагивается проблема экономии ног
+2
Конкретно эта статья easyelectronics.ru/multipleksirovanie.html
+3
А если присмотреться к реализации параллельных ЦАП, то можно развить идею детектирования нажатия комбинаций клавиш
0
О таких штуковинах еще в лохматых годах писал небезызвестный в определенных кругах А. Торрес rf.atnn.ru/s3/pic-rx.html
0
У товарища Dihalt-a есть ещё интересная статья по теме экономии
Управление семисегментными индикаторами по одному проводу.
Но как по мне то право на жизнь имеет и этот способ, всё равно, всегда, делаешь по обстоятельствам а там и более сумашедшее может получится — потом думаешь как оно вообще работает )
Управление семисегментными индикаторами по одному проводу.
Но как по мне то право на жизнь имеет и этот способ, всё равно, всегда, делаешь по обстоятельствам а там и более сумашедшее может получится — потом думаешь как оно вообще работает )
0
А мне нравиться, такие решения часто нашу оборонку напоминают, у каждой загогулины двойное назначение ). Накой мегу брать если тож самое удастся в 2313 запихнуть. Есть только один нюанс, потенциал модернизации падает до нельзя (. В идеале взять и контроллер побольше и оптимизации побольше, тогда и хитро и красиво и в случае чего можно модернизировать.
0
Если есть возможность, лучше просто забыть про Atmel'овыские МК и перейти на STM32 — там 32-битное ядро Cortex-M3, куча очень грамотной периферии с DMA, образцовые pin-to-pin совместимость и совместимость кода, и корпуса вплоть до LQFP176. Как сейчас не нужен QBasic, потому что есть современные языки программирования — так и не нужны всяческие извращения, когда есть современные МК.
+1
А разве есть stm32 в 20 ног?
0
При такой схем можно подключить, грубо говоря, сколько угодно кнопок, а вот светодиодов только два будет:)
0
Sign up to leave a comment.
«Давайте отрежем Сусанину ногу?» (с)