Obsah:

Ručná konzola Arduino Pong: 6 krokov (s obrázkami)
Ručná konzola Arduino Pong: 6 krokov (s obrázkami)

Video: Ručná konzola Arduino Pong: 6 krokov (s obrázkami)

Video: Ručná konzola Arduino Pong: 6 krokov (s obrázkami)
Video: Начало работы с QLC+ Управление цветомузыкой с компьютера. Как управлять светом. 2024, Jún
Anonim
Ručná konzola Arduino Pong
Ručná konzola Arduino Pong

DFRobot ma nedávno oslovil a chcel, aby som použil ich špeciálnu dosku Arduino Nano a OLED. Najprv som chcel vytvoriť inteligentný bicykel a postavil som ho celý. Nanešťastie bol však Nano príliš slabý na to, aby bežal a ukladal obrovský náčrt, ktorý bol potrebný. Rozhodol som sa teda znova navštíviť jeden z mojich predchádzajúcich projektov, maticu Neopixel, ktorá spustila hru Pong. Chcel som, aby bol namiesto toho prenosný a 1,7 OLED by bol perfektný displej.

Zoznam dielov:

  • Arduino nano
  • OLED
  • Rečník

Krok 1: Video

Image
Image

Krok 2: Navrhovanie hry

Navrhovanie hry
Navrhovanie hry

V tejto hre Pong som chcel, aby bola relatívne jednoduchá, čo znamenalo, že algoritmy pádla alebo efektnej loptičky ovládané počítačom nie sú. V zásade existuje jedno pádlo, ktorým sa používateľ môže pohybovať nahor alebo nadol, a pri páde loptičky do pádla by došlo k prevráteniu vektora osi x. Zakaždým, keď je lopta zasiahnutá, zaznie zvuk. Keď je herné zariadenie zapnuté, na obrazovke sa zobrazí názov hry a pokyny. Moja matka navyše vytvorila malú tematickú pieseň, ktorá sa opakuje na pozadí, kým nestlačíte horné tlačidlo.

Krok 3: Navrhovanie herného zariadenia

Navrhovanie herného zariadenia
Navrhovanie herného zariadenia
Navrhovanie herného zariadenia
Navrhovanie herného zariadenia
Navrhovanie herného zariadenia
Navrhovanie herného zariadenia
Navrhovanie herného zariadenia
Navrhovanie herného zariadenia

Môj CAD program je Fusion 360, a tak som sa rozhodol použiť ho na návrh môjho herného zariadenia na pong. Začal som navrhnutím každého použitého komponentu: OLED, Arduino Nano a reproduktora. Týmto spôsobom presne vidím, kde a ako by sa mal každý komponent zmestiť do skrinky. Potom som dal Nano a PCB do zadnej časti puzdra a OLED na neho. Ďalej nasledovala otázka, kam umiestniť reproduktor a tlačidlá. Rozhodol som sa, že 3W reproduktor môže ísť tesne pod obrazovku (pri pohľade zhora), a to tiež vyžadovalo vloženie „mriežky“cez reproduktor, aby nebol zvuk stlmený. Nakoniec som pridal dve tlačidlá na ľavej strane na pridanie ovládacích prvkov.

Krok 4: Konštrukcia zariadenia

Konštrukcia zariadenia
Konštrukcia zariadenia
Konštrukcia zariadenia
Konštrukcia zariadenia
Konštrukcia zariadenia
Konštrukcia zariadenia

Začal som 3D tlačou každej časti, ktorá sa skladala zo spodnej polovice, hornej polovice a 2 tlačidiel. Ďalej som spájkoval ženskú hlavičku na 4x6 cm a zapojil som ju do Nano. To umožňuje nielen ľahké odstránenie OLED, ale aj jeho povýšenie nad Arduino Nano. Informácie o zapojení nájdete v schéme. Potom som zapojil dve tlačidlá spolu s jednoduchou odpojovacou doskou micro USB na napájanie. Reproduktor bol tiež pripevnený a umiestnil ho do správnej polohy. Môj dizajn Fusion 360 umožňuje pomocou 3 mm skrutiek držať OLED, reproduktor a spájať dve polovice zariadenia. Musel som ich však spresniť, a tak som pomocou vŕtačky vyvŕtal 8 otvorov: 2 pre reproduktor, 2 pre obrazovku a 4 pod ním. Pre súbory môžete navštíviť odkaz Thingiverse.

Krok 5: Programovanie hry

Na to, aby bol program malý, bolo nevyhnutné použitie jednoduchého rozhrania. Začal som pridaním niekoľkých knižníc: Adafruit_GFX, Adafruit_SSD1351 a knižnice Arduino Timer. Ďalej som definoval svoje piny a farby, ako napríklad piny OLED a 16 bitové definície farieb. V mojom kóde sú tiež 4 spôsoby, ako zmeniť spôsob hry, napríklad zmena rozmerov pádla a rýchlosti pohybu loptičky. Potom existuje časť, kde je definovaná každá premenná vrátane skóre a rôznych súradníc. Kedykoľvek je zariadenie zapnuté, zobrazí sa obrázok gule a na obrazovke sa objaví text spolu s malou tematickou piesňou, ktorá je definovaná vyššie v kóde. Po spustení hry sa vytvoria dva časovače, jeden aktualizuje pádlo a druhý aktualizuje loptičku. Zakaždým, keď sa aktualizuje pozícia lopty, skontroluje sa jej súradnica, aby sa presvedčilo, či nepresahuje okraj obrazovky alebo či sa dotýka pádla. Zakaždým, keď sa odrazí, jeho os x alebo y je obrátená a zaznie malý tón. Pozrite sa na video na začiatku tohto zápisu, aby ste zistili, ako sa hra hrá.

Krok 6: Hrajte tenis

Hranie na pong!
Hranie na pong!
Hranie na pong!
Hranie na pong!
Hranie na pong!
Hranie na pong!
Hranie na pong!
Hranie na pong!

Názov hry je získať čo najnižšie skóre. Neexistuje žiadne časové obmedzenie, takže je to veľmi zábavné a dokonca vyvolávajúce tranz. Všetko, čo je potrebné, je stlačením jedného z dvoch tlačidiel pohybovať pádlom nahor alebo nadol. Je tiež možné pridať spôsob ukladania najvyššieho skóre pomocou EEPROM Arduina.

Odporúča: