Menu
CoddyTech

Вывести состояние кнопки

Часть раздела Входные сигналы путешествия по Arduino на Coddy. Урок 1 из 22.

В уроке «Чтение состояния кнопки» вызов digitalRead(pin) возвращал HIGH или LOW. Для платы это обычные числа: HIGH — это 1, а LOW — 0. Поэтому ты можешь сохранить считанное значение в переменную int и вывести его, как любое другое число:

int state = digitalRead(2);
Serial.println(state);

Кнопка здесь подключена так же, как и раньше: при удержании она соединяет контакт 2 с землёй (GND, 0 вольт), а INPUT_PULLUP удерживает контакт в состоянии HIGH всё остальное время. Поэтому монитор Serial показывает 1, когда кнопка отпущена, и 0, когда она нажата.

loop() выполняется тысячи раз в секунду. Короткая задержка delay(100) после вывода делает монитор Serial удобным для чтения: десять строк в секунду вместо тысяч.

challenge icon

Задание

Легко

Кнопка подключена к выводу 2. Выведите её состояние в монитор Serial:

  • в setup() установите для вывода 2 значение INPUT_PULLUP
  • в loop() считайте состояние вывода в переменную типа int, выведите его с помощью Serial.println(), затем подождите 100 мс

Нажмите Run, откройте монитор Serial и удерживайте кнопку, затем нажмите Check.

Попробуйте сами

const int buttonPin = 2;

void setup() {
  Serial.begin(9600);
  // настройте вывод кнопки в режим INPUT_PULLUP
}

void loop() {
  // считайте состояние кнопки, выведите показание, подождите 100 ms
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Входные сигналы

Потренируйтесь самостоятельно: Песочница Arduino