Я не очень внимательно читал ветку по мере появления в ней новых сообщений. Скажу, что эта ветка ничему не учит, и в следующий раз будет только сбивать других людей с пути истинного.
Начать с постановки задачи: ограничить число нажатий кнопки невозможно, это - механическое действие. Фактически ТС вообще не представлял себе задачу в начале обсуждения. В результате - уродливый код с кучей ненужных переменных и обработок, выполняющийся более-менее осмысленно только по причине delay (иначе serial был бы забит одинаковыми сообщениями). Добавить что-то нужное в него будет второй титанической задачей.
Лучше бы подсказали ТС как переформулировать задание, было бы гораздо информативнее для последующих этим путём новичков.
Начать с постановки задачи: ограничить число нажатий кнопки невозможно, это - механическое действие. Фактически ТС вообще не представлял себе задачу в начале обсуждения. В результате - уродливый код с кучей ненужных переменных и обработок, выполняющийся более-менее осмысленно только по причине delay (иначе serial был бы забит одинаковыми сообщениями). Добавить что-то нужное в него будет второй титанической задачей.
Лучше бы подсказали ТС как переформулировать задание, было бы гораздо информативнее для последующих этим путём новичков.