Satura rādītājs:
Video: Arduino kaujas kuģa spēle: 3 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:55
Atceros, ka bērnībā spēlēju kaujas kuģu spēles papīra un zīmuļa versiju. Patiesībā tas ir bijis aptuveni kopš Pirmā pasaules kara. Man bija arī “elektronisks” variants 1960. gadu sākumā ar nosaukumu “Sonar Sub Hunt”, kurā bija gaismas un skaņas un slēptās mīnas. Pēc šodienas videospēļu standartiem kaujas kuģis ir diezgan garlaicīgs, bet es domāju, ka es to uztaisīšu, lai tikai redzētu, ko mazbērni par to domā. Galu galā dažreiz retro var būt foršs.
Ir daži šī projekta fragmenti, kas būtu noderīgi citur, pat ja jūs neinteresē Battleship spēles veidošana. Tam ir vienkāršs 4 bitu 1602 LCD interfeiss, kas ietver rutīnu noteiktas rakstzīmju atrašanās vietas iestatīšanai. Ir arī saskarne 4x4 slēdža matricas dekodēšanai. Šīs divas saskarnes ir pieejamas kā atsevišķi iekļauti faili, lai tās būtu viegli pārvietojamas. Spēlei ir arī dažādas skaņas efektu procedūras un vienkārša viena tranzistora audio pastiprinātāja shēma.
1. darbība. Aparatūra
Šeit sniegtā shēma ir paredzēta vienam spēlētājam, tāpēc būs jāizveido divas vienības. Vienības sazinās, izmantojot 3 vadu saskarni, kas ietver UART TX un RX līnijas un zemējuma vadu. Es izvēlējos izmantot standarta 1/8 collu stereo austiņu ligzdu un standarta kabeli ar vīriešu kontaktdakšām abos galos. RX no vienas kastes iet uz otras kastes TX un otrādi. To var izdarīt, samainot vadus, kas pielodēti austiņu ligzdā kastes iekšpusē, vai apmainot tos uz shēmas plates, kad to veidojat.
Klasiskā spēle tika izklāstīta kā matrica, bet es nolēmu veikt vienkāršu ieviešanu, displejam izmantojot 1602 LCD. Pirmajā rindā ir redzamas spēlētāja kuģu atrašanās vietas un pretinieka metieni. Otrajā rindā tiek parādīti spēlētāja metieni un visi trāpījumi pretinieka kuģos. Tas nodrošina 16 iespējamās kuģu atrašanās vietas. Kuģu skaits ir noteikts programmatūrā, un es patvaļīgi izvēlējos 5.
16 kuģu atrašanās vietas labi atbilst slēdža prasībām, jo tas ļauj izveidot 4x4 matricu. Ir pieejami 4x4 matricas slēdžu paliktņi, bet es izvēlējos izmantot atsevišķus slēdžus vienā rindā, lai tie atbilstu lineārajam displejam. Tomēr es vadu slēdžus kā 4x4 matricu, lai būtu vajadzīgas tikai astoņas Arduino tapas. Pareizus savienojumus skatiet slēdža elektroinstalācijas shēmā un shēmā.
LCD displejs ir savienots ar 4 bitu saskarni. Es arī pievienoju ārēju gaismas diodi uz tapas D13, lai norādītu, kuram spēlētājam vajadzētu fotografēt. Sākotnēji spēlētāji izlemj, kurš uzņem pirmo metienu, un pēc tam programmatūra automātiski kontrolē spēles turp un atpakaļ.
Es gribēju pievienot vienkāršus skaņas efektus kadram, sprādzieniem, spēlei gatavu un uzvarētājam/zaudētājam. Es mēģināju izmantot vienkāršu pjezo skaņas signālu, bet tā vietā es saņēmu nelielu skaļruni. Skaļrunim nepieciešamā strāva pārsniedz Arduino spēju tikt galā, tāpēc tika pievienots vienkāršs tranzistora pastiprinātājs. Skaņa joprojām nav lieliska, taču tā ir labāka nekā ar skaņas signālu. Mans skaļrunis ir 4 omi, bet, ja jums ir 8 omi, tad shematiski nomainiet rezistoru no 39 omiem uz 33 omiem. Ja izmantojat pjezo skaņas signālu, jums vajadzētu būt iespējai to vadīt tieši no Arduino tapas, bet skaņas signāla otra puse ir savienota ar zemi.
Iekļauts arī ārējs atiestatīšanas slēdzis, kas ir pieslēgts tieši starp zemi un Arduino “atiestatīšanas” tapu. Tas nodrošina līdzekļus spēles restartēšanai.
2. darbība: programmatūra
Programmatūrā ir iekļauts iekļaut fails manam LCD interfeisam, un es arī izveidoju iekļaušanas failu 4x4 slēdža matricas skenēšanai. Inicializācija liek spēlētājam izvēlēties savu kuģu atrašanās vietas un pēc tam pāriet stāvoklī “Gatavs”. Kad abi spēlētāji ir gatavi, viens no viņiem sāk spēli, nospiežot slēdzi.
Metiena atrašanās vieta tiek pārraidīta caur UART otram spēlētājam, un atbilstošais rezultāts tiek nosūtīts atpakaļ spēlētājam, kurš izdarīja šāvienu. Kā minēts iepriekš, pēc pirmā kadra uzņemšanas programmatūra nosaka, kurš uzņem nākamo kadru. Pirms šāviena pārraides tas tiek pārbaudīts, salīdzinot ar iepriekšējo kadru atrašanās vietām. Ja šī vieta jau ir izmantota, kadrs netiks pārraidīts. Gaismas diode “My_Shot” nosaka, kuram ir kārta. Ir arī šāviena skaņa, kas tiek ģenerēta derīgai atlasei, un sprādziena skaņa, ja tiek trāpīts kuģim. Skaņas efekti ir iegūti no piemēriem, kas atrodami tiešsaistē ar modifikācijām atbilstoši spēlei.
Tiklīdz visi pretinieka kuģi ir trāpīti, uz katra LCD tiek parādīts ziņojums - viens kā uzvarētājs, otrs kā zaudētājs. Ziņojumā arī norādīts, ka spēli var atsākt, nospiežot atiestatīšanas pogu. Uzvarētājam un zaudētājam ir arī atsevišķi skaņas efekti.
3. darbība. Ekrānuzņēmumi
Šeit ir daži ekrānuzņēmumi no spēles. Tas ir šim ierakstam. Apskatiet citus manu pamācību materiālus un arī manu vietni: www.boomerrules.wordpress.com
Ieteicams:
Arduino kosmosa kuģa saskarne: 3 soļi
Arduino kosmosa kuģa saskarne: Hi Instructable kopiena, šoreiz esmu izstrādājis vienu no vienkāršākajiem projektiem, ko pabeigt ar Arduino Uno: kosmosa kuģa ķēdi. Tas ir tā sauktais, jo tas ir tāds programmēšanas un shēmas veids, kas tiktu izmantots agrīnās zinātniskās fantastikas TV šovos un filmās
Simona spēle - jautra spēle!: 5 soļi
Simona spēle - jautra spēle !: Atsauce: šeitPēc garas nedēļas nogales jums patiešām ir jācenšas izpildīt visus uzdevumus un darbu, par kuru esat atbildīgs. Mums ir pienācis laiks trenēt smadzenes, vai ne? Bez šīm garlaicīgajām un bezjēdzīgajām spēlēm ir arī spēle ar nosaukumu Simona spēle
Arduino akselerometra apmācība: Kuģa tilta vadīšana, izmantojot servomotoru: 5 soļi
Arduino akselerometra apmācība: kontrolējiet kuģa tiltu, izmantojot servomotoru: akselerometra sensori tagad ir lielākajā daļā mūsu viedtālruņu, lai sniegtu tiem plašu lietojumu un iespējas, kuras mēs izmantojam katru dienu, pat nezinot, ka par to ir atbildīgs akselerometrs. Viena no šīm iespējām ir vadāmība
Kosmosa kuģa vadības panelis - lāzera griezuma Arduino rotaļlieta: 11 soļi (ar attēliem)
Kosmosa kuģa vadības panelis - lāzera griezuma Arduino rotaļlieta: Pirms dažiem mēnešiem es nolēmu kļūt par vietējās veidotāju telpas dalībnieku, jo kopš seniem laikiem esmu vēlējies apgūt veidotāju tirdzniecības rīkus. Man bija neliela Arduino pieredze, un es šeit biju apmeklējis Fusion kursu par Instructables. Tomēr es h
RC. Delta. Izskatās pēc kosmosa kuģa: 20 soļi (ar attēliem)
RC. Delta. Izskatās pēc kosmosa kuģa: RC delta lidmašīna, kas izgatavota no putupolistirola loksnes (6 mm), uz tās ir KFM3 gaisa plēve, kas pazīstama arī kā smags pacēlājs, kas nozīmē, ka jūs varat to lidot, pārvadājot smagas kravas, tagad jūs visi domāsit, kāpēc es to izmantoju airfoil, nevis parasts airf