Obsah:
Video: Bitevní loď Arduino: 3 kroky
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
Pamatuji si, že jsem v dětství hrával papírovou a tužkovou verzi hry Battleship. Ve skutečnosti je to asi od 1. světové války. Také jsem měl na začátku 60. let „elektronickou“variantu s názvem „Sonar Sub Hunt“, která měla světla a zvuky a skryté miny. Podle dnešních standardů videoher je Bitevní loď docela nudná, ale říkal jsem si, že si ji stejně udělám, abych viděl, co si o tom myslí vnoučata. Přeci jen někdy může být retro cool.
Existují kousky tohoto projektu, které by byly užitečné jinde, i když nemáte zájem o hru Battleship. Má jednoduché 4bitové rozhraní 1602 LCD, které obsahuje rutinu pro nastavení umístění konkrétního znaku. K dispozici je také rozhraní pro dekódování matice přepínačů 4x4. Tato dvě rozhraní jsou k dispozici jako samostatné soubory pro zahrnutí, takže je lze snadno přenášet. Hra má také různé rutiny zvukových efektů a jednoduchý obvod zesilovače zvuku s jedním tranzistorem.
Krok 1: Hardware
Zde uvedené schéma je pro jednoho hráče, takže je třeba vyrobit dvě jednotky. Jednotky komunikují pomocí 3vodičového rozhraní, které zahrnuje linky UART TX a RX a zemnící vodič. Rozhodl jsem se použít standardní 1/8 palcový stereofonní konektor pro sluchátka a standardní kabel s konektorem na obou koncích. RX z jednoho boxu jde do TX druhého boxu a naopak. Můžete to udělat záměnou vodičů připájených ke konektoru pro sluchátka uvnitř krabice nebo jejich výměnou na desce s obvody, když ji stavíte.
Klasická hra byla vyložena jako matice, ale rozhodl jsem se udělat jednoduchou implementaci pomocí displeje 1602 LCD. První řádek ukazuje umístění lodi hráče a výstřely soupeře. Druhý řádek zobrazuje střely hráče a všechny zásahy na soupeřovy lodě. To poskytuje 16 možných míst pro lodě. Počet lodí je nastaven v softwaru a já jsem libovolně vybral 5.
16 umístění lodi odpovídá požadavkům přepínačů, protože umožňuje matici 4x4. K dispozici jsou maticové přepínače 4x4, ale rozhodl jsem se použít jednotlivé přepínače v jednom řádku, aby odpovídaly lineárnímu zobrazení. Přepínače jsem však zapojil jako matici 4x4, takže je potřeba pouze osm pinů Arduino. Správná zapojení najdete ve schématu zapojení spínače a schématu.
LCD displej je zapojen do 4bitového rozhraní. Také jsem přidal externí LED na pin D13, která indikuje, který hráč by měl střílet. Zpočátku se hráči rozhodnou, kdo provede první výstřel, a poté software automaticky ovládá tam a zpět ve hře.
Chtěl jsem přidat jednoduché zvukové efekty pro výstřel, výbuchy, připravenou hru a vítěze/poraženého. Zkoušel jsem použít jednoduchý piezo bzučák, ale místo toho jsem skončil s malým reproduktorem. Proud požadovaný reproduktorem přesahuje to, co Arduino zvládne, takže byl přidán jednoduchý tranzistorový zesilovač. Zvuk stále není skvělý, ale je lepší než s bzučákem. Můj reproduktor má 4 ohmy, ale pokud máte 8 ohmový, změňte schematicky odpor z 39 ohmů na 33 ohmů. Pokud používáte piezo bzučák, měli byste jej ovládat přímo z kolíku Arduino s druhou stranou bzučáku připojenou k zemi.
Součástí je také externí resetovací spínač, který je zapojen přímo mezi kostru a pin „reset“na Arduinu. To poskytuje prostředky pro restart hry.
Krok 2: Software
Software má soubor zahrnutí pro mé rozhraní LCD a také jsem vytvořil soubor pro zahrnutí pro skenování matice přepínače 4x4. Inicializace vyzve hráče, aby vybral umístění svých lodí, a poté přejde do stavu „Připraveno“. Když jsou oba hráči připraveni, jeden z nich zahájí hru stisknutím spínače.
Místo výstřelu je přeneseno přes UART druhému hráči a příslušný výsledek je přenesen zpět hráči, který výstřel vystřelil. Jak již bylo zmíněno dříve, po pořízení prvního snímku software ovládá, kdo pořídí další snímek. Před odesláním je snímek zkontrolován podle umístění předchozích výstřelů. Pokud již bylo toto místo použito, snímek nebude přenesen. LED „My_Shot“určuje, kdo je na řadě. K dispozici je také zvuk výstřelu generovaný pro platný výběr a zvuk výbuchu, pokud je zasažena loď. Zvukové efekty jsou odvozeny z příkladů nalezených online s úpravami, které vyhovují hře.
Jakmile jsou všechny soupeřovy lodě zasaženy, na každém LCD se zobrazí zpráva - jedna jako vítěz a jedna jako poražený. Zpráva také uvádí, že hru lze restartovat stisknutím tlačítka reset. Existují také samostatné zvukové efekty pro vítěze a poraženého.
Krok 3: Snímky obrazovky
Zde jsou některé snímky obrazovky ze hry. To je k tomuto příspěvku. Podívejte se na mé další pokyny a také na mé webové stránky na adrese: www.boomerrules.wordpress.com
Doporučuje:
Vytvořte si vlastní soubojové disky, které budete používat v bitevní aréně: 4 kroky
Vytvořte si své vlastní soubojové disky, které budete používat v bitevní aréně: Vždy mě napůl fascinovaly duelové disky, které najdete v kresleném seriálu Yugioh. Jak skvělé by bylo svolat stvůru pomocí balíčku karet a poté ji nechat vyhnat v nějaké holografické bojové aréně? Tady projdu h
UChip-RC loď z plastových lahví a přehrávač CD-ROM!: 4 kroky
UChip-RC loď z plastových lahví a přehrávač CD-ROM!: Poté, co jsem implementoval hardware a software pro připojení mého dronového rádia k motorům/servům, bylo dalším krokem dobré využití tvrdé práce a vybudování vlastního RC hračka, což je … loď! Jelikož nejsem strojní inženýr, rozhodl jsem se pro
Bitevní roboti Knex: 7 kroků
Bitevní roboti Knex: http://www.youtube.com/watch?v=LJbFasz1eAg Před 2 měsíci jsem viděl toto video pro klikovou hřídel knex. motor nebyl dost silný, aby spustil bílou tyč. tak mě napadlo použít motor ke stažení berana. na to jsem přišel. není to ver
Námořní bitevní robot v UM-JI: 14 kroků (s obrázky)
Naval Battle Robot in UM-JI: Introduction for the robot V této příručce se naučíte, jak vyrobit námořního bitevního robota s ovladačem PS2. Jako skupina X pro kurz VG100 je kurz určený pro nováčky zaměřený na kultivaci schopnosti navrhování a spolupráce
Vesmírná bitevní loď Yamato 2199 s trinketovými mikrokontroléry: 8 kroků (s obrázky)
Vesmírná bitevní loď Yamato 2199 s mikroprocesory Trinket: Vzhledem k remaku animace a filmu Vesmírná bitevní loď Yamato navíc k atraktivnímu designu modelu Bandai. To mě zajímá postavit tento model vesmírné bitevní lodi znovu. Bandai nezmiňuje jeho měřítko, odhadem asi 1: 2500