Представленный принцип подключения позволяет, используя одинаковое количество кнопок, получить существенный выигрыш
по количеству опрашиваемых кнопок в сравнении со схемой обычной матрицы кнопок, например: 2^8-1=255 кнопок
против 4*4=16 кнопок - для матрицы. Схема:
Так же как и нет ссылки на саму статью. Внимательней товарищи. что касаемо "Подключение семи кнопок на три вывода порта МК" это то же самое что и 7 светодиодов на три ноги проца. Принцип тот же, только все наоборот. Вот пример http://www.electromir.net/Shems/13/Shema_13o19.htm. Так же можно для клавиатуры использовать всего 1 АЦП порт процессора. Кнопок вешаешь немерено.
Сама схема и краткое описание - это и есть статья.
Quote (DAlexV )
Так же можно для клавиатуры использовать всего 1 АЦП порт процессора
тогда программа опроса клавиатуры станет намного сложнее, к тому же это совершенно другой принцип взаимодействия клавиатуры с МК. Так же указанный вами принцип подходит только для тех мк, которые имеют на борту АЦП. Еще бывает, что АЦП МК сильно загружен и времени на опрос клавиатуры нет (ведь сколько бы каналов не было, блок АЦП всего один).
"Подключение семи кнопок на три вывода порта МК" это то же самое что и 7 светодиодов на три ноги проца
Вы совершенно не правы, в трюках со светодиодами используются все три состояния порта МК: 1. логический ноль, 2. логическая единица, 3. Z-состояние, а в предложенной мной схеме нужно лишь определить ноль на входе или единица.
Схема не без недостатков. Я к тому, что одновременное нажатие кнопок, например SA1 и SA2, будет расцениваться как нажатие кнопки SA3. Следует учитывать это.
Я бы сказал, что это скорее особенность схемы, такая же как у кнопочной матрицы. А вообще это плата за использование количества кнопок большего чем количество входов. Кто-то посчитает, что недостатком схемы является использование большого количества диодов. В способе коммутации, о котором упомянул DAlexV (использование АЦП), можно организовать опрос кнопок так, что одновременное нажатие будет восприниматься корректно.