Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Клеточный автомат «Жизнь» Конвея на Arduino Nano с OLED 128x64

Компоненты и материалы

Беспаечная макетная плата (половинка) 1
OLED 128x64 (I2C) 1
Перемычки 4
Arduino Nano R3 1

О проекте

Оригинал: runtimeprojects.com

Проект использует I2C OLED 128×64 для отображения клеточного автомата на Arduino Nano.

Необходимо

Предварительные знания

Предполагается, что вы знаете, что такое Arduino, умеете пользоваться IDE и загружать скетчи. Базовые навыки программирования (желательно C) также приветствуются.

Теория: Клеточный автомат «Жизнь»

Сетка клеток, каждая в одном из двух состояний: жива (1) или мертва (0). Два правила Джона Конвея:

  1. Рождение: Мёртвая клетка с ровно 3 живыми соседями становится живой.
  2. Выживание: Живая клетка с 2 или 3 живыми соседями остаётся живой, иначе умирает.

Подробнее — Википедия: Жизнь (игра).

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

Подключите Arduino и OLED к макетной плате:

Две макетки соединил зад к заду — получился мини-телевизор.

Клеточный автомат «Жизнь» Конвея на Arduino Nano с OLED 128x64
Клеточный автомат «Жизнь» Конвея на Arduino Nano с OLED 128x64

Программирование

Для работы с OLED используем две библиотеки Adafruit:

Скетч на GitHub: klauscam/Arduino-Cellular-Automata

Важные замечания

Строка 51: display.begin(SSD1306_SWITCHCAPVCC, 0x3C); — адрес 0x3C может отличаться. Подбирайте экспериментально.

Горизонтальные полосы на фото — артефакт частоты обновления OLED и камеры.

Код

Библиотеки (GitHub)

Производственный процесс

  1. Создание классической игры Pong на Arduino UNO с OLED-дисплеем: пошаговый урок
  2. Создание анимации и игр на LCD 16×2 с Arduino UNO
  3. Умный вольтметр на Arduino и смартфоне — простое DIY-проект
  4. Pixie: DIY-наручные часы на Arduino Pro Mini и NeoPixel — стильный светодиодный тахометр времени
  5. Управление Arduino Uno из Python 3: команды через последовательный порт и демонстрация с LED
  6. Высокоскоростной тахометр на Arduino: новый алгоритм измерения RPM до 2 знаков после запятой
  7. eDOT: точные Arduino-часы и метеостанция с встроенным ИК-пультом
  8. Сборка компактного FM-радио на Arduino Nano и RDA5807M
  9. Система учёта рабочего времени на RFID, Arduino и Google Таблицах
  10. Продвинутая система обнаружения падений: Arduino + Windows IoT + Azure Cloud