// Кнопка натиснута — світлодіод увімкнений; відпущена — вимкнений.
#include <Arduino.h> // Підключаємо команди Arduino.
const int BUTTON_PIN = 2; // Пін, до якого під’єднана кнопка.
const int LED_PIN = 13; // Пін, до якого під’єднаний світлодіод.
void setup() { // Виконується один раз після запуску плати.
pinMode(BUTTON_PIN, INPUT_PULLUP); // Вхід із внутрішнім резистором підтягування.
pinMode(LED_PIN, OUTPUT); // Налаштовуємо пін світлодіода як вихід.
Serial.begin(115200); // Відкриваємо послідовний порт зі швидкістю 115200 біт/с.
}
void loop() { // Повторюємо перевірку стану кнопки.
bool pressed = digitalRead(BUTTON_PIN) == LOW; // LOW означає, що кнопка натиснута.
digitalWrite(LED_PIN, pressed); // true вмикає LED, false вимикає.
static bool wasPressed = false; // Зберігаємо попередній стан між викликами loop.
if (pressed && !wasPressed) { // Кнопка натиснута зараз, але раніше була відпущена.
Serial.println("Натиснули!"); // Друкуємо повідомлення на початку натискання.
}
wasPressed = pressed; // Запам’ятовуємо стан для наступної перевірки.
delay(10); // Пауза 10 мс між перевірками; це не повне усунення брязкоту.
}