Найти в Дзене
Журнал «Код»

Собираем змейку на Arduino

Это будет самая необычная змейка, в которую вы играли. Змейка — очень благодатная тема для программистов, и вот почему: У нас уже был разбор того, как в неё играет искусственный интеллект, и статья о том, как за 10 минут сделать змейку для браузера. Теперь шагнём дальше и не только напишем код, но и соберём железо. Результат — ваша собственная змейка на микропроцессорной плате, с экраном. Что понадобится Arduino Nano https://aliexpress.ru/item/33011803738.html Есть много вариантов платформы Adruino, но нам нужна одна из самых простых — микросхема на плате с ножками для монтажа в специальную плату. Обратите внимание: при покупке вам нужно указать, что хотите плату с уже припаянными ногами (soldered headers / soldered pins). Иначе придётся паять ноги на плату, а смысл был в том, чтобы не паять. Пластмассовая плата для монтажа (breadboard) https://aliexpress.ru/item/32957396174.html Светодиодная матрица 8 × 8 https://aliexpress.ru/item/32888107767.html По ней и будет бегать наша змейка. М
Оглавление

Это будет самая необычная змейка, в которую вы играли.

Змейка — очень благодатная тема для программистов, и вот почему:

  • понятные и простые правила,
  • минимум логики, которую нужно запрограммировать,
  • примитивная графика,
  • простое управление,
  • море кайфа.

У нас уже был разбор того, как в неё играет искусственный интеллект, и статья о том, как за 10 минут сделать змейку для браузера. Теперь шагнём дальше и не только напишем код, но и соберём железо. Результат — ваша собственная змейка на микропроцессорной плате, с экраном.

Что понадобится

Arduino Nano

https://aliexpress.ru/item/33011803738.html

Есть много вариантов платформы Adruino, но нам нужна одна из самых простых — микросхема на плате с ножками для монтажа в специальную плату. Обратите внимание: при покупке вам нужно указать, что хотите плату с уже припаянными ногами (soldered headers / soldered pins). Иначе придётся паять ноги на плату, а смысл был в том, чтобы не паять.

-2

Пластмассовая плата для монтажа (breadboard)

https://aliexpress.ru/item/32957396174.html

Примерно вот так мы соединим между собой все элементы на плате.
Примерно вот так мы соединим между собой все элементы на плате.

Светодиодная матрица 8 × 8

https://aliexpress.ru/item/32888107767.html

По ней и будет бегать наша змейка. Можно, конечно, использовать ЖК-матрицы, чтобы картинка была получше, но они стоят дороже и программировать их сложнее.

-4

Переменный резистор (потенциометр)

https://aliexpress.ru/item/32845927611.html

Обычный переменный резистор на 10 кОм. Суть этих устройств в том, что, вращая регулятор, мы можем изменять сопротивление резистора. В нашем проекте он будет отвечать за скорость движения змейки. Если она двигается слишком быстро — крутите ручку и змейка замедлится.

-5

Джойстик

https://aliexpress.ru/item/33001603885.html

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

-6

Провода

https://aliexpress.ru/item/32990573297.html

Самый кайф этого проекта в том, что нам не придётся паять, чтобы собрать все модули вместе. Вместо этого используем провода с разными разъёмами, поэтому лучше сразу заказать полный комплект.

-7

Загружаем код игры

Мы сейчас не будем разбирать особенности программирования под Arduino, а вместо этого сразу дадим готовый скетч. Скетч — это программа для Arduino, которая написана на C++ и которую сохранили как файл с расширением .ino.

Код игры

Чтобы загрузить код игры в микроконтроллер, вам понадобится:

  1. Сохранить программу в виде .ino-файла.
  2. Подключить плату к компьютеру с помощью USB-кабеля.
  3. Установить Arduino IDE — среду разработки под Arduino для компьютера.
  4. Настроить компьютер для работы с платой. Нужно поставить драйверы для контроллера и убедиться, что компьютер всё распознал верно. Чтобы понять, как это правильно сделать, поищите в интернете «Как подключить arduino nano к компьютеру» или почитайте эту статью (не нашу).
  5. Открыть в Arduino IDE наш файл с программой.
  6. Там же нажать кнопку «Загрузить».
  7. Подождать сообщения о том, что программа загружена.
Та самая кнопка «Загрузить» в Arduino IDE.
Та самая кнопка «Загрузить» в Arduino IDE.

Собираем и запускаем

Главное на этом этапе — не спешить и делать всё по картинке. Чтобы подключить провода к Arduino, нужно вставить его в центр белой пластиковой монтажной платы и подключить нужные провода рядом с нужными входами. «Рядом» — то есть на том же, грубо говоря, столбце: дырки на монтажной плате соединены как бы поперёк платы, то есть все провода, которые вы воткнёте в один столбец, будут соединены.

-9

Если всё равно непонятно, что и куда подключать, посмотрите видео:

Чтобы игра заработала после сборки, достаточно подключить плату к любому блоку питания или компьютеру.