Snake Game je velmi populární od začátku mobilních telefonů. Zpočátku to přišlo v černobílých mobilních telefonech a brzy se stalo velmi slavným. S pokrokem mobilních telefonů se tato hra také hodně změnila a nyní je k dispozici mnoho grafických a barevných verzí této hry.
Hra Snake se také stala velmi oblíbeným kutilským projektem pro fanoušky elektroniky a studenty. Dnes tedy ukážeme, Arduino Snake Game, se všemi jeho základními funkcemi, přičemž to bude zároveň jednoduché.
Použité komponenty:
- Arduino UNO
- 8x8 LED Dot Matrix displej
- Posuvný registr 74HC595
- 16x2 LCD
- POT 1K
- Tlačítka
- Připojovací vodiče
- Chlebová deska
- Zdroj napájení
Pracovní vysvětlení:
Vytváření této hry je trochu komplikované. Ale v tomto tutoriálu jsme to pro vás zjednodušili. K realizaci tohoto projektu jsme použili 8x8 červený barevný Dot matrix displej pro zobrazení hada a jeho potravinového bodu, LCD pro zobrazení bodů nebo skóre, 5 tlačítek pro udávání pokynů a spuštění hry a nakonec Arduino UNO pro ovládání celý proces. Níže je uveden pinový diagram 8x8 LED Dot Matrix Display s původním obrázkem:
Když zapneme obvod, nejprve zobrazíme uvítací zprávu a poté nápovědu „Press Start To Play“ na LCD. Poté LCD zobrazí skóre jako nulu a bodový maticový displej zobrazí dvě tečky jako hada a jednu tečku jako jídlo.
Nyní uživatel musí stisknout prostřední tlačítko pro spuštění hry a had se ve výchozím nastavení začne pohybovat směrem nahoru. Poté musí uživatel dát hadovi směr stisknutím „směrových kláves“ kolem prostředního tlačítka. Zde jsme použili pět kláves (tlačítek), jmenovitě levou klávesu, pravou klávesu, klávesu nahoru, klávesu dolů a klávesu Start. Kdykoli had dosáhne k potravinové tečce nebo jí jídlo, skóre se pokaždé zvýší o 5 bodů a délka hada se pokaždé zvýší o jednu tečku (LED), rychlost hada bude také rychlejší než dříve. A kdykoli by had udeřil na jakoukoli zeď nebo dosáhl na konec LED matice, pak by hru ukončil („Game Over“). Poté musí uživatel znovu spustit hru stisknutím tlačítka start.
Vysvětlení obvodu:
Okruh tohoto projektu Snake Game Project je málo složitý. Zde jsme připojili bodový maticový displej pomocí posuvného registru 74HC595. Zde se používají dva posuvné registry, jeden pro řízení sloupců a druhý pro řízení řádků. Ovládací kolíky obou registrů, posuvný registr sloupců a posuvný registr řádků (SH, ST),jsou přímo připojeny k pinům Arduino číslo 14 a 16. A kolík DS posuvného registru sloupců a posuvný registr řádků jsou přímo spojeny s kolíky číslo 15 a 17 Arduina. Tlačítko Start pro spuštění hry je připojeno na kolíku číslo 3, levé směrové tlačítko na kolíku 4, pravé směrové tlačítko na kolíku 6, směrové tlačítko nahoru na kolíku 2 a směrové tlačítko dolů na kolíku 5. LCD je také připojen v našem hardwaru k ukázat skóre. Kolíky RS a EN jsou přímo připojeny na pin 13 a 12. Pin RW je přímo uzemněn. A datové piny d4-d7 jsou připojeny na piny 11, 10, 9, 8 Arduina. Zbytek připojení je uveden ve schématu zapojení.
Vysvětlení programování:
Abychom mohli napsat tento herní kód Arduino hada, nejprve zahrneme hlavičkové soubory a definujeme piny pro LCD. A pak definujte několik pinů pro směrová tlačítka a datový pin pro posuvné registry.
#zahrnout
Poté inicializujeme všechny věci, které jsme v programu použili. Ve funkci nastavení inicializujeme LCD, udáme směr vstupních výstupních pinů, vytáhneme bity a zobrazíme uvítací zprávu na LCD.
void setup () {lcd.begin (16,2); pinMode (ds_col, VÝSTUP); pinMode (sh_col, OUTPUT); pinMode (st_col, VÝSTUP); pinMode (ds_row, OUTPUT); pinMode (start, INPUT);……………
A pak začneme hru ve funkci smyčky .
void show_snake (int temp) {for (int n = 0; n
Zde jsme použili níže uvedenou funkci pro čtení směru vstupu z tlačítka.
void read_button () {if (! digitalRead (left)) {move_r = 0; move_c! = - 1? move_c = -1: move_c = 1; while (! digitalRead (vlevo));……………
Podívejte se níže na celý C Code of Snake Game.