Obsah:

Ruční konzole Arduino Pong: 6 kroků (s obrázky)
Ruční konzole Arduino Pong: 6 kroků (s obrázky)

Video: Ruční konzole Arduino Pong: 6 kroků (s obrázky)

Video: Ruční konzole Arduino Pong: 6 kroků (s obrázky)
Video: Top 5 Arduino Displays 2024, Listopad
Anonim
Ruční konzole Arduino Pong
Ruční konzole Arduino Pong

DFRobot mě nedávno oslovil a chtěl, abych použil jejich speciální desku Arduino Nano a OLED. Nejprve jsem chtěl vytvořit chytré kolo a postavil jsem ho celé. Nano byl ale bohužel příliš slabý na to, aby běžel a ukládal potřebnou obrovskou skicu. Rozhodl jsem se tedy znovu navštívit jeden ze svých předchozích projektů, matici Neopixel, která provozovala hru Pong. Chtěl jsem místo toho udělat přenosný a 1,7 OLED by byl perfektní displej.

Seznam dílů:

  • Arduino nano
  • OLED
  • mluvčí

Krok 1: Video

Image
Image

Krok 2: Navrhování hry

Navrhování hry
Navrhování hry

Pro tuto hru Pong jsem chtěl, aby to bylo relativně jednoduché, což znamenalo, že algoritmy pádla nebo efektního míče odrážejí nocomputer. V zásadě existuje jedno pádlo, kterým se uživatel může pohybovat nahoru nebo dolů, a pokud by kulička narazila na pádlo, došlo by k převrácení vektoru osy x. Pokaždé, když je míč zasažen, zazní zvuk. Když je herní zařízení zapnuto, objeví se obrazovka s názvem hry a pokyny. Moje matka navíc vytvořila malou ústřední melodii, která se na pozadí opakuje, dokud není stisknuto horní tlačítko.

Krok 3: Navrhování herního zařízení

Navrhování herního zařízení
Navrhování herního zařízení
Navrhování herního zařízení
Navrhování herního zařízení
Navrhování herního zařízení
Navrhování herního zařízení
Navrhování herního zařízení
Navrhování herního zařízení

Můj go-to CAD program je Fusion 360, a tak jsem se rozhodl použít jej k návrhu svého herního zařízení pro pong. Začal jsem návrhem každé použité komponenty: OLED, Arduino Nano a reproduktoru. Tímto způsobem přesně vidím, kde a jak by se každá součástka měla vejít do skříně. Poté jsem dal Nano a PCB do zadní části pouzdra a OLED na něj. Další byla otázka, kam umístit reproduktor a tlačítka. Rozhodl jsem se, že 3W reproduktor může jít těsně pod obrazovku (při pohledu shora), a to také vyžadovalo umístit „reproduktor“přes reproduktor, aby nebyl zvuk tlumený. Nakonec jsem přidal dvě tlačítka na levé straně pro přidání ovládacích prvků.

Krok 4: Konstrukce zařízení

Konstrukce zařízení
Konstrukce zařízení
Konstrukce zařízení
Konstrukce zařízení
Konstrukce zařízení
Konstrukce zařízení

Začal jsem 3D tiskem každé části, skládající se ze spodní poloviny, horní poloviny a 2 tlačítek. Dále jsem připájel ženskou hlavičku na 4x6 cm a připojil ji k Nano. To nejen umožňuje snadné vyjmutí OLED, ale také jej povyšuje nad Arduino Nano. Informace o zapojení najdete ve schématu. Poté jsem připojil dvě tlačítka spolu s jednoduchou deskou pro odpojení micro USB pro napájení. Reproduktor byl také připevněn a umístil jej do správné polohy. Můj design Fusion 360 umožňuje 3mm strojní šrouby držet OLED, reproduktor a spojit obě poloviny zařízení. Ale musel jsem je udělat přesně, a tak jsem pomocí vrtačky vyvrtal 8 otvorů: 2 pro reproduktor, 2 pro obrazovku a 4 dole. Pro soubory můžete navštívit odkaz Thingiverse.

Krok 5: Programování hry

Použití jednoduchého rozhraní bylo zásadní pro udržení programu malého rozsahu. Začal jsem přidáním několika knihoven: Adafruit_GFX, Adafruit_SSD1351 a knihovny Arduino Timer. Dále jsem definoval své piny a barvy, jako jsou piny OLED a 16bitové definice barev. V mém kódu jsou také 4 způsoby, jak změnit způsob hry, jako je změna rozměrů pádla a rychlosti pohybu míče. Poté existuje část, kde je definována každá proměnná, včetně skóre a různých souřadnic. Kdykoli je zařízení zapnuto, zobrazí se obrázek koule a na obrazovce se objeví text spolu s malou ústřední melodií, která je definována dříve v kódu. Jakmile hra začne, vytvoří se dva časovače, jeden aktualizuje pádlo a druhý aktualizuje míč. Pokaždé, když se aktualizuje pozice míče, zkontrolují se jeho souřadnice, aby se ujistil, že nepřekračuje okraj obrazovky nebo se dotýká pádla. Pokaždé, když se odrazí, je jeho osa x nebo y převrácena a hraje malý tón. Podívejte se na video na začátku tohoto zápisu, abyste zjistili, jak se hra hraje.

Krok 6: Hrajte Pong

Hraje Pong!
Hraje Pong!
Hraje Pong!
Hraje Pong!
Hraje Pong!
Hraje Pong!
Hraje Pong!
Hraje Pong!

Název hry je získat co nejnižší skóre. Neexistuje žádný časový limit, takže je to velmi příjemné a dokonce navozující trans. Vše, co je nutné, je stisknutí jednoho ze dvou tlačítek pro pohyb pádla nahoru nebo dolů. Je také možné přidat způsob, jak uložit nejvyšší skóre pomocí EEPROM Arduina.

Doporučuje: