Счетчик в Arduino Mega & Nano конфигураторе это обычные счетчик с логическим блоком на входе тактирования и одним входом сброса.
Максимальное значение 255 и при достижении его активируется событие Cntx.
На рисунке показано как настроить счетчика 1, чтобы по сигналу с порта In_1 он увеличивал свое значение на единицу до максимального значения 5.
По появлению сигнала на входе In_2, произойдет сброс счетчика в 0 и сбрасывается событие Cntx
Важное замечание счет происходит только по изменению (переходу) состояния порта или события из 0 в 1.
Если сигнал используется с инверсией то состояние входа или события должно перейти из 1 в 0.
Также в проекте уже активирована функция антидребезга для всех входов.
На основе счетчиков можно построить таймеры, для формирования временных интервалов.
Для можно использовать системные таймера c периодом:
Tmr1 - 0.5 секунды
Tmr2 - 1 секундa
Tmr3 - 10 секунд
Tmr4 - 1 минута
В примере показана настройка счетчика 2, в режиме таймера, для отслеживания удержания кнопки более 10 секунд. При этом сформируется событие Cnt2. При отпускания кнопки событие Cnt2 сброситься и счетчик обнулиться.