Была похожая задача.
В ПЛК не хватило дискретных входов. Пришлось кнопки посадить на аналоговый вход 0...10В.
Вложение 25910
Диоды решают проблему одновременного нажатия нескольких кнопок. Приоритет всегда будет у более верхней кнопки, т.к. потенциал с делителя у не выше. Все
резисторы в делителе
одного номинала, сам номинал большой роли не играет.
В программе просто набор компараторов, которые последовательно проверяют, что напряжение немного больше каждой ступени делителя. Проверка начинается с самой нижней кнопки.
Вложение 25911
Вложение 25912
Продукция серийная, в течение четырех лет нареканий на работу кнопок не было.