Тетрис на базе arduino и двухцветных светодиодных матриц

Тетрис на базе Arduino и двухцветных светодиодных матриц

Один из наборов для самостоятельной сборки jolliFactory поставляется с модулем управления двухцветной светодиодной матрицей. Данный модуль позволяет соединять последовательно большое количество модулей в соответствии с требованиями вашего проекта.

С помощью данных модулей было изготовлено несколько интересных устройств:

Видеоигра тетрис была выпущена в 1984 году и имела огромный успех для портативной ручной приставки Game Boy, выпущенной в 1989 году, которая сделала ее популярной до настоящего времени.

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

Мы попытались найти подобные проекты в сети Интернет и получили некоторую информацию, которую впоследствии адаптировали для создания простой игры тетрис на базе Arduino и двухцветной светодиодной матрицы.

Для выполнения данного проекта необходимы базовые знания электроники, некоторые умения по пайке компонентов и знание микроконтроллера Arduino.

Ниже показано видео работы готового устройства.

Шаг 1: Изготовления драйвера управления двухцветным светодиодным модулем

В данном проекте используются две светодиодные матрицы, управляемые Arduino Nano. Нам понадобится два набора Bi-color (Red/Green) LED Matrix Driver Module Kits от jolliFactory. Каждый из этих модулей использует две микросхемы-драйвера MAX7219 для управления двухцветной светодиодной матрицей. Данные микросхемы идеально пригодны для нашего проекта, поскольку снимают основную работу с микроконтроллера и облегчают разводку логических элементов устройства.

Двухцветные светодиодные матрицы можно приобрести здесь.

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

Ниже показано видео по сборке светодиодного модуля:

Шаг 2: Подключение

После сборки светодиодных матриц, их необходимо подключить к микроконтроллеру Arduino Nano согласно принципиальной схемы подключения (светодиодные матрицы не показаны для удобства отображения).

Для звукового выхода игровой приставки мы использовали 8-омный динамик мощностью 0.5 ватта, управляемый напрямую одним из цифровых выводов Arduino через резистор 100 ом. В данном проекте используется основной звуковой тон. Для портативной приставки будет вполне достаточно невысокого уровня громкости, регулируемого с помощью простых настроек.

Для навигации и вращения блоков игры тетрис понадобится SPST панель с четырьмя нажимными кнопками.

Необходимо использовать подтягивающие резисторы номиналом 10 кОм для входных выводов DATA IN, CLK и LOAD. При первой подаче питания на микроконтроллер или при его сбросе линии ввода/вывода будут «висеть» в воздухе. Микросхема MAX7219 увидит это как достоверные данные и начнет отображать «мусор», пока микроконтроллер не начнет отрабатывать управляющую программу. Чтобы этого не происходило необходимо использовать подтягивающие резисторы. Для снижения общего количества компонентов можно не использовать подтягивающие резисторы номиналом 10 кОм для входных выводов DATA IN и CLK.

За исключением двух двухцветных светодиодных модулей и четырех нажимных кнопок, мы выполнили монтажные соединения всей схемы на небольшой перфорированной плате размером около 60 мм x 60 мм.

Примите во внимание, что на фото показаны четыре нажимные кнопки, устанавливаемые на общей перфорированной плате. Мы первоначально использовали их для управления игровой приставкой. Однако после изготовления корпуса мы решили использовать панель с установленными на ней четырьмя нажимными кнопками для более удобного управления игрой. Мы соединили параллельно нашу панель с нажимными кнопками с небольшими нажимными кнопками на печатной плате, поэтому управление может выполняться нажимными кнопками на печатной плате или на панели.

Шаг 3: Программирование платы Arduino

В плату Arduino необходимо загрузить скетч для управления дисплеем.

Для этого мы использовали Arduino IDE V1.03.

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

Шаг 4: Корпус и окончательная сборка

Поскольку данный проект задумывался для сайта FUN factor без намерения использовать устройство длительное время, мы не уделили большое внимание созданию надежного корпуса. Однако изготовленный корпус позволяет удобно держать устройство и комфортно играть.

Для корпуса мы использовали заднюю часть от картонной коробки с акриловой передней крышкой, подкрашенной в голубой цвет, с установленными нажимными кнопками. Мы даже не прикрепили модули к корпусу, поскольку они очень плотно вошли в него. На рисунках показаны различные этапы сборки модулей вместе.

Тетрис на базе Arduino и двухцветных светодиодных матриц

Один из наборов для самостоятельной сборки jolliFactory поставляется с модулем управления 2-хцветной светодиодной матрицей. Данный модуль позволяет соединять последовательно большое количество модулей в соответствии с требованиями вашего проекта.

С помощью данных модулей было изготовлено несколько интересных устройств:

Видеоигра тетрис была выпущена в 1984 году и имела огромный успех для портативной ручной приставки Game Boy, выпущенной в 1989 году, которая сделала ее популярной до настоящего времени.

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

Мы попытались найти подобные проекты в сети Интернет и получили некоторую информацию, которую впоследствии адаптировали для создания простой игры тетрис на базе Arduino и 2-хцветной светодиодной матрицы.

Для выполнения данного проекта необходимы базовые знания электроники, некоторые умения по пайке компонентов и знание микроконтроллера Arduino.

Ниже показано видео работы готового устройства.

Шаг 1: Изготовления драйвера управления 2-хцветным светодиодным модулем

В данном проекте используются две светодиодные матрицы, управляемые Arduino Nano. Нам понадобится два набора Bi-color (Red/Green) LED Matrix Driver Module Kits от jolliFactory. Каждый из этих модулей использует две микросхемы-драйвера MAX7219 для управления 2-хцветной светодиодной матрицей. Данные микросхемы идеально пригодны для нашего проекта, поскольку снимают основную работу с микроконтроллера и облегчают разводку логических элементов устройства.

Двухцветные светодиодные матрицы можно приобрести здесь.

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

Ниже показано видео по сборке светодиодного модуля:

Шаг 2: Подключение

После сборки светодиодных матриц, их необходимо подключить к микроконтроллеру Arduino Nano согласно принципиальной схемы подключения (светодиодные матрицы не показаны для удобства отображения).

Для звукового выхода игровой приставки мы использовали 8-омный динамик мощностью 0.5 ватта, управляемый напрямую одним из цифровых выводов Arduino через резистор 100 ом. В данном проекте используется основной звуковой тон. Для портативной приставки будет вполне достаточно невысокого уровня громкости, регулируемого с помощью простых настроек.

Для навигации и вращения блоков игры тетрис понадобится SPST панель с четырьмя нажимными кнопками.

Необходимо использовать подтягивающие резисторы номиналом 10 кОм для входных выводов DATA IN, CLK и LOAD. При первой подаче питания на микроконтроллер или при его сбросе линии ввода/вывода будут «висеть» в воздухе. Микросхема MAX7219 увидит это как достоверные данные и начнет отображать «мусор», пока микроконтроллер не начнет отрабатывать управляющую программу. Чтобы этого не происходило необходимо использовать подтягивающие резисторы. Для снижения общего количества компонентов можно не использовать подтягивающие резисторы номиналом 10 кОм для входных выводов DATA IN и CLK.

Читайте также  Внутреннее устройство плис (fpga)

За исключением 2-х 2-хцветных светодиодных модулей и 4-х нажимных кнопок, мы выполнили монтажные соединения всей схемы на небольшой перфорированной плате размером около 60 мм x 60 мм.

Примите во внимание, что на фото показаны четыре нажимные кнопки, устанавливаемые на общей перфорированной плате. Мы первоначально использовали их для управления игровой приставкой. Но после изготовления корпуса мы решили использовать панель с установленными на ней четырьмя нажимными кнопками для более удобного управления игрой. Мы соединили параллельно нашу панель с нажимными кнопками с небольшими нажимными кнопками на печатной плате, поэтому управление может выполняться нажимными кнопками на печатной плате или на панели.

Шаг 3: Программирование платы Arduino

В плату Arduino необходимо загрузить скетч для управления дисплеем.

Для этого мы использовали Arduino IDE V1.03.

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

Шаг 4: Корпус и окончательная сборка

Поскольку данный проект задумывался для сайта FUN factor без намерения использовать устройство длительное время, мы не уделили большое внимание созданию надежного корпуса. Но изготовленный корпус позволяет удобно держать устройство и комфортно играть.

Для корпуса мы использовали заднюю часть от картонной коробки с акриловой передней крышкой, подкрашенной в голубой цвет, с установленными нажимными кнопками. Мы даже не прикрепили модули к корпусу, поскольку они очень плотно вошли в него. На рисунках показаны различные этапы сборки модулей вместе.

Урок 47. Игра тетрис на Arduino

В этом уроке мы создадим игру «Тетрис». Это известная многим игра «головоломка» изобретённая и написанная советским программистом Алексеем Пажитновым. Первоначальная версия игры была написана для компьютера «Электроника-60» на языке Паскаль. Игра была выпущена 6 июня 1984 г. Мировую известность игра приобрела благодаря её выпуску на портативной консоли GameBoy компании Nintendo

Правила игры «Тетрис»:

Вверху игрового поля появляются случайные геометрические фигуры, которые падают пока не достигнут низа поля или других фигур. Во время падения, фигуры можно сдвигать по горизонтали (влево / вправо), поворачивать на 90° (по часовой стрелке) и ускорять их падение. Таким образом игрок может выбирать место падения фигуры. Если из упавших фигур соберётся горизонтальный ряд без пробелов (пустот), то этот ряд исчезнет, а всё что было над ним опустится. За каждый исчезнувший ряд игрок получает очки. Скорость падения фигур увеличивается с каждым новым уровнем игры. Уровень игры увеличивается через определённое количество появившихся фигур. Игра заканчивается если новая фигура не может появиться вверху игрового поля по причине того что ей мешают уже имеющиеся там фигуры.

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

Нам понадобится:

  • Arduino Uno х 1шт.
  • Trema OLED-дисплей 128×64 х 1шт.
  • Trema-модуль Кнопка х 4шт. (в ассортименте: синяя, красная, зелёная)
  • Trema Set Shield х 1шт.
    И никаких проводов (кроме USB для загрузки скетча).

Для реализации проекта нам необходимо установить библиотеку:

  • iarduino_OLED — графическая библиотека для работы с Trema OLED дисплеями.

О том как устанавливать библиотеки, Вы можете ознакомиться на странице Wiki — Установка библиотек в Arduino IDE.

Видео:

Схема подключения:

  • Перед подключением модулей, закрепите винтами нейлоновые стойки в отверстиях секций 1, 2, 3, 5 и 6 Trema Set Shield.
  • Установите Trema Set Shield на Arduino Uno .

Остальные модули устанавливаются на Trema Set Shield следующим образом: Trema Кнопки устанавливаются в центр нижних колодок секций 1, 2, 5 и 6, а Trema OLED-дисплей 128×64 устанавливается в верхнюю колодку 3 секции, как это показано на рисунках ниже.

  • Устанавливаем Trema-модуль Кнопку в 1 посадочную площадку.
  • Устанавливаем Trema-модуль Кнопку в 2 посадочную площадку.
  • Устанавливаем Trema OLED-дисплей 128×64 в 3 посадочную площадку, в верхнюю I2C колодоку.
  • Устанавливаем Trema-модуль Кнопку в 5 посадочную площадку.
  • Устанавливаем Trema-модуль Кнопку в 6 посадочную площадку.
  • Полученный результат представлен на рисунке ниже.

После чего закрепите модули вкрутив через их отверстия нейлоновые винты в установленные ранее нейлоновые стойки (нейлоновые стойки и винты входят в комплектацию Trema Set Shield) .

Наличие всего двух колодок в секциях Trema Set Shield, не позволит Вам неправильно установить модули, т.к. при неправильном подключении модули будут смещены относительно разметки своей секции и Вы не сможете закрепить их винтами.

Назначение кнопок:
  • L (Left) смещение фигуры влево.
  • R (Right) смешение фигуры вправо.
  • T (Turn) поворот фигуры на 90° по часовой стрелке.
  • D (Down) сброс фигуры вниз (ускорение падения фигуры).

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

Код может показаться немного громоздким. Для понимания кода рекомендуем сначала прочитать раздел «алгоритм работы» следующий сразу за кодом. А потом ознакомиться с комментариями в строках самого кода.

Алгоритм работы:

  • В начале скетча (до кода setup) выполняются следующие действия:
    • Подключаем графическую библиотеку iarduino_OLED для работы с Trema OLED дисплеем.
    • Объявляем объект myOLED указывая адрес дисплея на шине I2C, он должен совпадать с адресом установленным переключателем на обратной стороне платы OLED дисплея.
    • Объявляем константы pinBtnL, pinBtnR, pinBtnT, pinBtnD, pinSeed с указанием номеров выводов Arduino, которые будут задействованы в скетче.
    • Объявляем константы GAME_OFF, GAME_ON, GAME_OVER для удобочитаемости скетча.
    • Подключаем шрифты и картинки предустановленные в библиотеке myOLED.
    • Определяем константы с настраиваемыми значениями. Меняя эти значения можно менять размеры игрового стола, размеры фигур, скорость игры и время «залипания» кнопок.
    • Объявляем массивы и переменные участвующие в работе скетча.
    • Объявляем функции используемые в скетче.
  • В коде setup выполняются следующие действия:
    • Инициируем работу с Trema OLED дисплеем и запрещаем автоматический вывод данных.
    • Указываем кодировку текста в скетче (если требуется).
    • Конфигурируем выводы к которым подключены кнопки.
    • Готовим корректную работу функции random() для генерации псевдослучайных чисел.
    • Выводим анимированное приветствие (текст «Тетрис» с появляющимися фигурами).
    • Переводим состояние игры в GAME_OFF «Не играем» (ждём нажатие любой кнопки).
  • В коде loop сначала выполняется чтение состояний кнопок, после чего выполняется 1 из 3 частей:
    • «Не играем» — эта часть кода ожидает нажатия на любую кнопку. Если любая кнопка будет нажата, будут подготовлены переменные, прорисуется игровое поле и игра перейдёт в состояние GAME_ON «Играем».
    • «Играем» — эта часть кода является основной. Здесь в 18 строках кода реализован весь алгоритм игры. Он более подробно описан ниже.
    • «Игра завершена» — эта часть кода содержит анимацию закраски и очистки игрового стола, вывод текста «КОНЕЦ ИГРЫ», вывод анимированного приветствия и перевод игры в состояние GAME_OFF «Не играем».
  • Весть алгоритм игры полностью реализован в разделе «Играем» который состоит из 4 частей:
    (каждая часть этого раздела заключена в тело оператора if).
    • Первая часть сдвигает фигуру на игровом столе влево. Код в теле оператора if выполняется только при нажатии на кнопку Left. Единственная функция shiftFigure() в теле оператора if, выполняет сдвиг фигуры игрового стола на одну клетку. Параметр функции равный 1 указывает сдвинуть фигуру влево.
    • Вторая часть сдвигает фигуру на игровом столе вправо. Код в теле оператора if выполняется только при нажатии на кнопку Right. Единственная функция shiftFigure() в теле оператора if, выполняет сдвиг фигуры игрового стола на одну клетку. Параметр функции равный 2 указывает сдвинуть фигуру вправо.
    • Третья часть выполняет поворот фигуры на игровом столе. Код в теле оператора if выполняется только при нажатии на кнопку Turn. Единственная функция turnFigure() в теле оператора if, выполняет поворот фигуры на 90°. Первый параметр функции равный 1 указывает что повернуть требуется фигуру на игровом столе.
    • Четвёртая часть выполняет сдвиг фигуры игрового стола на одну клетку вниз. Код в теле оператора if выполняется как от нажатия на кнопку Down, так и по достижении времени tmrShift. Параметр функции равный 3 указывает сдвинуть фигуру вниз. Отпускание кнопки Down не заблокирует выполнение кода в теле оператора if при следующем проходе цикла loop (Если нажать и отпустить кнопку Down, то фигура будет сдвигаться вниз пока не достигнет дна или других фигур).
      Код в теле оператора If выполняет следующие действия:
      • Обновляем время tmrShift для следующего сдвига фигуры вниз на игровом столе.
      • Сдвигаем фигуру игрового стола на 1 клетку вниз. Проверяя не достигла ли фигура дна игрового стола или другой фигуры на игровом столе. Если не достигла, то на этом выполнение данного участка кода будет закончено.
      • Если фигура достигла дна игрового стола или другой фигуры (закончила падение), то выполняются следующие действия:
        • Проверяем наличие заполненных строк игрового стола, если они есть, то они удаляются, со сдвигом всего что находится выше и добавлением бала игроку.
        • Сбрасываем флаг нажатия на кнопку Down (на случай если фигура падала принудительно)
        • Обновляем текущий уровень игры в соответствии со значением счётчика созданных фигур.
        • Увеличиваем счётчик созданных фигур.
        • Выводим номер текущего уровня игры и количество набранных баллов.
        • Создаём будущую фигуру с выводом её изображения в поле справа от игрового стола, а ту фигуру которая ранее находилась в этом поле переносим на верх игрового стола (она станет новой фигурой в игре).
        • Если новую фигуру не удалось разместить на игровом столе (ей мешают другие фигуры), значит игра закончена, переводим состояние игры в GAME_OVER «Игра завершена».
      • Действия перечисленные выше выполняются вызовом функций:
        • shiftFigure(); — выполняет сдвиг фигуры на одну клетку игрового стола и возвращает false если сдвиг невозможен.
        • turnFigure(); — поворачивает фигуру игрового стола на 90°.
        • checkTable(); — проверяет наличие заполненных строк игрового стола, возвращая true или false.
        • deletTableRows(); — удаляет все заполненные строки с игрового стола, возвращая количество удалённых строк.
        • createNewFigure(); — создаёт будущую фигуру а предыдущую будущую фигуру делает новой на игровом столе, возвращая false если не удалось вставить фигуру на игровой стол.
Читайте также  Двухрежимный автомат для насоса

Все строки скетча (кода программы) прокомментированы, так что Вы можете подробнее ознакомиться с кодом прочитав комментарии строк.

Gwsi geps

Table of Contents:

  • Расходные материалы:
  • Шаг 1: Построение модуля драйвера двухцветной светодиодной матрицы
  • Шаг 2: проводка
  • Шаг 3: Программирование платы Arduino
  • Шаг 4: Корпус и сборка
  • 2 человека сделали этот проект!
  • 張 萱 張 сделал это!
  • MatthewG139 сделал это!
  • рекомендации
  • Образцы кода Mash Up Arduino
  • Открытый прототип Ornithopter. Arduino с питанием и дистанционным управлением.
  • Интернет вещей
  • Фэндом Конкурс
  • IoT Challenge
  • Конкурс садоводства
  • 49 обсуждений

Один из комплектов для электроники, созданный jolliFactory, представляет собой двухцветный светодиодный матричный модуль драйвера. Этот модуль предназначен для работы в цепочке, поэтому вы можете последовательно соединять модули с тем количеством модулей, которое вам необходимо для вашего проекта.

Ниже приведены некоторые проекты, созданные с использованием этого двухцветного модуля светодиодной матрицы:

    Можно создать 7-цветную светодиодную матрицу с прокруткой текста.

Инструктивный для создания голосового ввода Arduino Двухцветный светодиодный матричный дисплей с прокруткой текста (Bluetooth + Android)

  • Возможность создания двухцветного светодиодного матричного визуализатора спектрального спектра на основе Arduino
  • Удивительно просматривать инструктивные материалы и находить проекты, которые могут заинтересовать и вдохновить вас приступить к проекту или зажечь новые идеи для вашего проекта.

    Tetris — это игра-головоломка с изображением мозаики, выпущенная в 1984 году, и это была чрезвычайно успешная портативная версия Game Boy, выпущенная в 1989 году, которая сделала эту игру одной из самых популярных за всю историю.

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

    Мы расширили наш поиск до других онлайн-сайтов, и нам удалось найти некоторую информацию, которую мы адаптировали для создания простой двухцветной светодиодной матрицы-тетрисы на основе Arduino.

    Для создания этого проекта требуются базовые знания в области электроники, навыки пайки компонентов электроники и некоторые знания по использованию Arduino.

    Вы можете посмотреть следующее видео YouTube, чтобы увидеть, что мы строим.

    Расходные материалы:

    Шаг 1: Построение модуля драйвера двухцветной светодиодной матрицы

    Мы будем строить для этого проекта игру Tetris с двумя светодиодными матрицами, управляемую Arduino Nano. Нам понадобятся два из двухцветных (красных / зеленых) светодиодных матричных модулей драйверов от jolliFactory. Каждый из этих модулей использует две ИС драйвера дисплея MAX7219 для управления двухцветной светодиодной матрицей. Эти микросхемы превосходны, потому что они отнимают много работы у микроконтроллера и упрощают схему подключения и логики.

    Вы можете найти этот двухцветный светодиодный матричный модуль драйвера здесь.

    В этот комплект входят все сквозные компоненты, и тот, кто обладает базовыми навыками пайки, сможет собрать его без особых затруднений.

    Смотрите следующее видео на YouTube о том, как собрать комплект модуля драйвера светодиодной матрицы:

    Шаг 2: проводка

    После того, как все комплекты светодиодного матричного модуля драйвера завершены, они соединяются вместе с микроконтроллером Arduino Nano, как показано на монтажной схеме (светодиодные матрицы не установлены для лучшего обзора).

    Для вывода звука из игры мы использовали один 0,5-омный 0,5-ваттный динамик, управляемый одним из цифровых выводов Arduino через резистор 100 Ом. Для этого проекта используется базовый звуковой тон, а для ручной игры с этой простой настройкой должно быть достаточно низкой громкости звука.

    Для навигации и вращения блоков Tetris для проекта требуются четыре мгновенных кнопочных переключателя SPST для монтажа на панель.

    Обратите внимание на использование понижающих резисторов 10 кОм на входных контактах DATA IN, CLK и LOAD. Когда питание впервые подается на микроконтроллер или когда они сбрасываются, их линии ввода / вывода плавают. MAX7219 может видеть это как достоверные данные и отображать мусор, пока микроконтроллер не получит контроль. Понижающие резисторы предотвращают эти проблемы. Чтобы уменьшить количество деталей для этого проекта, вы можете попробовать использовать резисторы 10 кОм для входных линий DATA IN и CLK.

    За исключением двух двухцветных модулей светодиодного матричного драйвера и четырех кнопочных переключателей, мы подключаем всю схему к небольшому куску перфорированной доски размером около 60 х 60 мм.

    Обратите внимание, что на фото на плате для перфорирования есть четыре кнопки для монтажа на печатной плате. Изначально мы использовали их для управления игрой, но после создания простого корпуса для игры мы решили использовать вместо этого четыре кнопки для монтажа на панель для лучшего управления игрой. Мы параллельно соединили нашу кнопку для монтажа на панели с кнопками для монтажа на печатной плате, так что теперь управление игрой можно осуществлять с помощью кнопок на плате или на панели.

    Редактировать: Для тех, кто не хочет возиться с слишком большой разводкой проводов при помощи перфорированной платы, jolliFactory разработала плату с интерфейсом на печатной плате, подходящую для этого проекта. Если вы используете эту интерфейсную плату, не забудьте изменить цифровой вывод выходного сигнала динамика с D9 на D8 в скриншоте, загруженном из этой инструкции для управления динамиком.

    Шаг 3: Программирование платы Arduino

    Для запуска дисплея Arduino необходимо загрузить эскиз Arduino.

    Мы использовали Arduino IDE V1.03 для нашего проекта. Загрузите эскиз Arduino ниже для этого проекта.

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

    Примечание. Возникли проблемы с модулями двухцветного светодиодного матричного дисплея? Загрузите следующую тестовую программу, чтобы протестировать каждый из ваших модулей отдельно. Дисплей должен загореться КРАСНЫМ, ЗЕЛЕНЫМ и ОРАНЖЕВЫМ в последовательности строка за строкой, чтобы повторно заполнить весь дисплей.

    Шаг 4: Корпус и сборка

    Поскольку этот проект просто создан с учетом FUN-фактора, и мы не намерены использовать его долгое время, мы не уделили слишком много внимания созданию надлежащего корпуса. Тем не менее, встроенный корпус должен позволить игроку держать гаджет в руке, чтобы играть в нем было достаточно комфортно.

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

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

    Tetris Clone With OLED SSD1306 (I2C) For Arduino Nano / Uno © GPL3+

    Getting Tiny Tetris running on a 128×64 OLED display using an Arduino Nano or Uno.

    • games
    • 15,749 views
    • 9 comments
    • 42 respects

    Tiny Tetris

    Nano wiring

    Please log in or sign up to comment.

    Читайте также  Телефонная карточка на микросхеме at90s2343 фирмы atmel

    Author

    BADFEED
    • 1 project
    • 5 followers

    Additional contributors

    • Sound, music, artwork by tobozo

    Published on

    Members who respect this project

    Table of contents

    • Tetris Clone With OLED SSD1306 (I2C) For Arduino Nano / Uno
    • Components and supplies
    • About this project
    • Code
    • Schematics
    • Comments (9)

    Similar projects you might like

    A cheap version of an Arduboy clone with which you can play a number of original Arduboy games.

    Arduboy Clone with Arduino Nano and I2C OLED display

    Project tutorial by Mirko Pavleski

    • 9,564 views
    • 12 comments
    • 23 respects

    Relive your childhood memories with the new and better Tetris!

    The Tetris

    Project showcase by Archiev Kumar

    • 13,427 views
    • 10 comments
    • 7 respects

    This project is based on Anthony Russell’s (a.k.a. BADFEED) Tiny Tetris; I just changed its OLED 12C configuration and added a joystick.

    Arduino Mini Tetris Thumbstick Controlled

    • 6,944 views
    • 8 comments
    • 12 respects

    Dear friends, In this Tutorial we are going to build an Arduino powered Game. It is the classic Space trash Game!

    Space Trash Game using Arduino and OLED Display

    Project tutorial by Pi BOTS MakerHub

    • 7,094 views
    • 3 comments
    • 15 respects

    Learn how to simulate throwing a dice with the Arduino and 6 LEDs!

    LED Dice

    Project showcase by EvdS

    • 63,767 views
    • 41 comments
    • 159 respects

    Dear friends,In this Tutorial we are going to build an Arduino powered Game. It is the classic Pong Game! You can play against the co.

    Arduino Pong Game — OLED Display

    Project tutorial by Nick Koumaris

    • 24,250 views
    • 3 comments
    • 31 respects