Дуэль

Сделаем простую игру, в которой задачей игрока будет нажать кнопку быстрее соперника.

Для этого нам понадобятся:

  • 3 светодиода
  • 3 резистора 220 ом
  • 3 кнопки

Игра будет начинаться с того, что один из игроков нажмет кнопку старт (центральная кнопка). Через случайное время загорится сигнальный светодиод, означающий, что можно начинать дуэль. Если игрок нажмет кнопку быстрее соперника, то загорится его светодиод. Нажав на стартовую кнопку, игра начнется сначала.

Соберите схему:

duel

Для подключения кнопок не требуется резистор, так как мы будем использовать встроенный подтягивающий резистор. Для этого в pinMode нужно будет указать INPUT_PULLUP. При этом, ненажатая кнопка будет выдавать 1, а нажатая – 0.

Сначала программа будет ждать нажатия на стартовую кнопку с помощью пустого цикла while. После того, как кнопка была нажата, должны погаснуть все светодиоды и через случайное время зажечься стартовый светодиод. Тут же стоит проверить, не решил ли кто-то схитрить и еще до зажигания светодиода зажать кнопку. Если такое обнаружится, то победа присуждается его сопернику. Дальше снова идет пустой цикл while — ждем, когда будет нажата одна из двух игровых кнопок. После этого проверяем, кто нажал кнопку и присуждаем ему победу, зажигая его светодиод.

Код программы:

Видео проекта: https://youtu.be/ZzUlgoN6rSY

GitHub: https://github.com/DKlyachenko/Arduino-Button-Duel

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *