Taula de continguts:
Vídeo: Joc del cuirassat Arduino: 3 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:13
Recordo que de petit havia jugat a una versió en paper i a llapis del Battleship Game. De fet, existeix des de la Primera Guerra Mundial. També a principis dels anys 60 tenia una variant "electrònica" anomenada "Sonar Sub Hunt" que tenia llums i sons i mines amagades. Segons els estàndards actuals de videojocs, Battleship és bastant avorrit, però vaig pensar que en faria un de totes maneres només per veure què en pensaven els néts. Al cap i a la fi, de vegades el retro pot ser genial.
Hi ha fragments d’aquest projecte que serien útils en altres llocs encara que no us interessi crear el joc Battleship. Té una interfície LCD 1602 de 4 bits senzilla que inclou una rutina per establir una ubicació de caràcter específica. També hi ha una interfície per descodificar una matriu de commutadors 4x4. Aquestes dues interfícies estan disponibles, ja que inclouen fitxers independents perquè siguin fàcilment transportables. El joc també té diverses rutines d’efectes de so i un circuit amplificador d’àudio senzill d’un transistor.
Pas 1: maquinari
L'esquema que es presenta aquí és per a un sol jugador, de manera que caldria fer dues unitats. Les unitats es comuniquen mitjançant una interfície de 3 fils que inclou les línies UART TX i RX i un cable de terra. Vaig optar per utilitzar un connector per a auriculars estèreo de 1/8 de polzada i un cable estàndard amb endolls masculins als dos extrems. El RX d’una caixa va al TX de l’altra caixa i viceversa. Podeu fer-ho canviant els cables soldats a la presa per a auriculars dins de la caixa o canviant-los a la placa de circuit quan el construïu.
El joc clàssic es va dissenyar com a matriu, però vaig decidir fer una implementació senzilla amb una pantalla LCD 1602 per a la pantalla. La primera línia mostra la ubicació del vaixell del jugador i els tirs de l’adversari. La segona línia mostra els tirs del jugador i qualsevol cop a les naus de l’adversari. Això proporciona 16 ubicacions possibles per als vaixells. El nombre de vaixells està definit al programari i vaig triar arbitràriament 5.
Les 16 ubicacions del vaixell s’adapten molt bé als requisits de commutació perquè permet una matriu 4x4. Hi ha coixinets de commutació de matriu 4x4 disponibles, però he escollit utilitzar commutadors individuals en una sola línia per coincidir amb la pantalla lineal. Tanmateix, he connectat els interruptors com una matriu 4x4 de manera que només es necessiten vuit pins Arduino. Consulteu el diagrama de cablejat del commutador i l’esquema per obtenir les connexions adequades.
La pantalla LCD està connectada a una interfície de 4 bits. També he afegit un LED extern al pin D13 per indicar quin jugador hauria de fer un tret. Inicialment, els jugadors decideixen qui fa el primer tret i després el programari controla automàticament l’anada i la tornada del joc.
Volia afegir efectes de so simples per al tret, les explosions, el joc a punt i el guanyador / perdedor. Vaig provar d'utilitzar un senzill zumbador piezoelèctric, però vaig acabar amb un petit altaveu. El corrent requerit per l'altaveu supera el que pot gestionar l'Arduino, de manera que es va afegir un simple amplificador de transistor. El so encara no és fantàstic, però és millor que amb el brunzidor. El meu altaveu és de 4 ohms, però si en teniu un de 8 ohms, canvieu la resistència de l'esquema de 39 ohms a 33 ohms. Si utilitzeu un brunzidor piezoelèctric, hauríeu de ser capaç de conduir-lo directament des del pin Arduino amb l'altre costat del brunzidor connectat a terra.
També s’inclou un commutador de restabliment extern que es connecta directament entre terra i el pin de “reset” de l’Arduino. Això proporciona els mitjans per reiniciar el joc.
Pas 2: programari
El programari té el fitxer d’inclusió per a la meva interfície LCD i també he creat un fitxer d’inclusió per a l’escaneig de la matriu del commutador 4x4. La inicialització demana al jugador que seleccioni les ubicacions de les seves naus i després es posi a l'estat "Llest". Quan els dos jugadors estan preparats, un d’ells comença el joc prement un interruptor.
La ubicació del tir es transmet a través de la UART a l’altre jugador i el resultat adequat es torna a transmetre al jugador que va disparar. Com es va esmentar anteriorment, un cop realitzada la primera fotografia, el programari controla qui fa la següent foto. Abans de transmetre un tret, es controla amb les ubicacions dels plans anteriors. Si aquesta ubicació ja s'ha utilitzat, la captura no es transmetrà. El LED "My_Shot" determina de quin torn és. També es genera un so de tret per a una selecció vàlida i un so d’explosió si es colpeja un vaixell. Els efectes sonors es deriven d’exemples trobats en línia amb modificacions per adaptar-se al joc.
Un cop tots els vaixells d’un oponent han estat colpejats, es mostra un missatge a cada pantalla LCD: un com a guanyador i un com a perdedor. El missatge també especifica que es pot reiniciar el joc prement el botó de reinici. També hi ha efectes de so separats per al guanyador i el perdedor.
Pas 3: captures de pantalla
Aquí teniu algunes captures de pantalla del joc. Això és tot per a aquesta publicació. Consulteu els meus altres instructables i també el meu lloc web a: www.boomerrules.wordpress.com
Recomanat:
Joc Simon: Joc divertit: 5 passos
Simon Game - Fun Game !: Referència: després d'un llarg cap de setmana, us heu d'esforçar completament per realitzar totes les tasques i treballs dels quals esteu responsables. És hora que ens entrenem el cervell, oi? A més d’aquests jocs avorrits i sense sentit, hi ha un joc anomenat Simon Game
Joc LED Aruduino Fent clic ràpid Joc de dos jugadors: 8 passos
Joc LED Aruduino Fent clic ràpid Joc de dos jugadors: aquest projecte està inspirat en @HassonAlkeim. Si esteu disposat a aprofundir aquí hi ha un enllaç que podeu consultar https://www.instructables.com/id/Arduino-Two-Player-Fast-Button-Clicking-Game/. Aquest joc és una versió millorada d’Alkeim. És un
Tutorial del blindatge del controlador del motor Arduino L293D: 8 passos
Tutorial del blindatge del controlador del motor Arduino L293D: Podeu llegir aquest i molts altres tutorials sorprenents al lloc web oficial d’ElectroPeak Descripció general En aquest tutorial, aprendreu a conduir motors CC, pas a pas i servomotors mitjançant un blindatge del controlador del motor Arduino L293D. Què aprendreu: Informació general
Joc del joc de la vida: 7 passos
Game of Life Kit: The Game of Life Boards són una plataforma escalable per a visualitzacions d'autòmats cel·lulars. Cada placa conté 16 LEDs en una xarxa 4x4, un microcontrolador i una xarxa de comunicacions i distribució d'energia. Amb el firmware disponible, executen Conway
Com comprovar si s'executarà un joc a l'ordinador abans de comprar el joc .: 4 passos
Com comprovar si un joc s’executarà a l’ordinador abans de comprar el joc. Recentment he adquirit Call of Duty 4 a un amic (de franc podria afegir) perquè no funcionaria al seu ordinador. Bé, el seu ordinador és bastant nou i em va desconcertar per què no funcionaria. Així que, després d’un parell d’hores de recerca a Internet, em vaig trobar amb