Единица за упорство
Коллеги, не позорьте IT, читайте уже эти долбаные руководства. В случае с тем самым хобби — учебники электротехники и просто Application Notes. Их умные люди писали, честное слово.
Что-что? Универсального решения нет? Ой, да ну?! Резистор к питанию, кнопка замыкает резистор на землю, в разомкнутом состоянии линия питает контакт микроконтроллера. На контакте получаем чёткие 0/1, инвертированные по отношению к кнопке.
Разумеется, есть и дребезг контактов, и другие нюансы — но они давно и красиво решаются. Смотрим применение операционных усилителей, а также вспоминаем теорию автоматического управления, где говорится, что делают с сигналом конденсаторы. Rotary encoder? Аналогично — в Application Notes, в учебники, к знакомым, в конце концов. Оно уже решено. И вы таки не поверите, сколько промышленных решений используют энкодеры разных типов.
А так хобби интересное и полезное, да. С уважением, инженер, для которого это — работа.