На эту тему написано много, в разных источниках и многими авторами. Казалось бы, все давно известно, а решения проверены временем. С одной стороны, это действительно так. А с другой, этот вопрос возникает постоянно у новичков, да и не только у них. Поэтому я решил уделить дребезгу контактов, не силовых, а сигнальных, небольшое внимание. Но рассмотрю вопрос с разных сторон, а не так, как в большинстве публикаций "вот вам кнопка, вот так давим дребезг". Реальные ситуации бывают разными, и подход к подавлению дребезга тоже будет разным...
Что такое дребезг контактов, и как с ним бороться? Для ответа на этот вопрос необходимо решить простенькую задачку. ЗАДАЧА: Написать программу, переключающую состояние светодиода (горит/не горит) при каждом нажатии кнопки. При каждом нажатии кнопки выводить в программу монитор порта сообщение "click". Нажали на кнопку светодиод загорелся, еще раз нажали - светодиод погас. Для реализации задачи можно использовать простой алгоритм. Программа висит в бесконечном цикле, ожидая нажатия кнопки. После нажатия,...