Table des matières:
Vidéo: Jeu de cuirassé Arduino : 3 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Je me souviens avoir joué à une version papier et crayon du Battleship Game quand j'étais enfant. En fait, il existe depuis la Première Guerre mondiale environ. J'avais également une variante «électronique» au début des années 1960 appelée «Sonar Sub Hunt» qui avait des lumières, des sons et des mines cachées. Selon les normes actuelles des jeux vidéo, Battleship est assez ennuyeux, mais je pensais en faire un de toute façon juste pour voir ce que les petits-enfants en pensaient. Après tout, le rétro peut parfois être cool.
Il y a des morceaux de ce projet qui seraient utiles ailleurs même si vous n'êtes pas intéressé à faire le jeu Battleship. Il possède une simple interface LCD 1602 à 4 bits qui comprend une routine pour définir un emplacement de caractère spécifique. Il existe également une interface pour décoder une matrice de commutation 4x4. Ces deux interfaces sont disponibles sous forme de fichiers d'inclusion séparés afin qu'elles soient facilement transportables. Le jeu propose également diverses routines d'effets sonores et un simple circuit amplificateur audio à un transistor.
Étape 1: Matériel
Le schéma présenté ici est pour un seul joueur, il faudrait donc créer deux unités. Les unités communiquent à l'aide d'une interface à 3 fils qui comprend les lignes UART TX et RX et un fil de terre. J'ai choisi d'utiliser une prise casque stéréo standard de 1/8 pouce et un câble standard avec des fiches mâles aux deux extrémités. Le RX d'un boîtier va au TX de l'autre boîtier et vice-versa. Vous pouvez le faire en échangeant les fils soudés à la prise casque à l'intérieur de la boîte ou en les échangeant sur la carte de circuit imprimé lorsque vous la construisez.
Le jeu classique était présenté sous forme de matrice, mais j'ai décidé de faire une implémentation simple en utilisant un écran LCD 1602 pour l'affichage. La première ligne montre l'emplacement des vaisseaux du joueur et les tirs de l'adversaire. La deuxième ligne montre les tirs du joueur et tous les coups sur les navires de l'adversaire. Cela fournit 16 emplacements possibles pour les navires. Le nombre de navires est défini dans le logiciel et j'ai choisi arbitrairement 5.
Les 16 emplacements des navires correspondent bien aux exigences du commutateur car ils permettent une matrice 4x4. Il existe des pads de commutateur matriciel 4x4 disponibles, mais j'ai choisi d'utiliser des commutateurs individuels sur une seule ligne pour correspondre à l'affichage linéaire. J'ai cependant câblé les commutateurs comme une matrice 4x4 afin que seules huit broches Arduino soient nécessaires. Reportez-vous au schéma de câblage de l'interrupteur et au schéma pour les connexions appropriées.
L'écran LCD est câblé pour une interface 4 bits. J'ai également ajouté une LED externe sur la broche D13 pour indiquer quel joueur doit tirer. Au départ, les joueurs décident qui tire le premier coup, puis le logiciel contrôle automatiquement les allers-retours du jeu.
Je voulais ajouter des effets sonores simples pour le tir, les explosions, le jeu prêt et le gagnant/perdant. J'ai essayé d'utiliser un simple buzzer piézo mais j'ai fini par utiliser un petit haut-parleur à la place. Le courant requis par le haut-parleur dépasse ce que l'Arduino peut gérer, un simple amplificateur à transistor a donc été ajouté. Le son n'est toujours pas génial mais c'est mieux qu'avec le buzzer. Mon haut-parleur est de 4 ohms, mais si vous en avez un de 8 ohms, changez la résistance dans le schéma de 39 ohms à 33 ohms. Si vous utilisez un buzzer piézo, vous devriez pouvoir le piloter directement à partir de la broche Arduino avec l'autre côté du buzzer connecté à la terre.
Un interrupteur de réinitialisation externe est également inclus et est câblé directement entre la terre et la broche de « réinitialisation » de l'Arduino. Cela permet de relancer le jeu.
Étape 2: Logiciel
Le logiciel a le fichier d'inclusion pour mon interface LCD et j'ai également créé un fichier d'inclusion pour le balayage de la matrice de commutation 4x4. L'initialisation invite le joueur à sélectionner les emplacements de ses navires, puis passe à l'état « Prêt ». Lorsque les deux joueurs sont prêts, l'un d'eux lance le jeu en appuyant sur un interrupteur.
L'emplacement du tir est transmis via l'UART à l'autre joueur et le résultat approprié est retransmis au joueur qui a tiré. Comme mentionné précédemment, une fois la première photo prise, le logiciel contrôle qui prend la photo suivante. Avant qu'un plan ne soit transmis, il est vérifié par rapport aux emplacements des plans précédents. Si cet emplacement a déjà été utilisé, la prise de vue ne sera pas transmise. La LED « My_Shot » détermine à qui revient le tour. Il y a aussi un son de tir généré pour une sélection valide et un son d'explosion si un navire est touché. Les effets sonores sont dérivés d'exemples trouvés en ligne avec des modifications pour s'adapter au jeu.
Une fois que les navires d'un adversaire ont tous été touchés, un message s'affiche sur chaque écran LCD - un comme le gagnant et un comme le perdant. Le message précise également que le jeu peut être relancé en appuyant sur le bouton de réinitialisation. Il existe également des effets sonores séparés pour le gagnant et le perdant.
Étape 3: Captures d'écran
Voici quelques captures d'écran du jeu. C'est tout pour ce post. Consultez mes autres Instructables et aussi mon site Web à l'adresse: www.boomerrules.wordpress.com
Conseillé:
Contrôleur de jeu Arduino Rhythm (pour mon propre jeu): 6 étapes
Contrôleur de jeu de rythme Arduino (pour mon propre jeu) : dans ce instructable, je vais vous montrer comment je construis ce contrôleur de jeu de rythme à partir de zéro. Cela implique des compétences de base en menuiserie, des compétences de base en impression 3D et des compétences de base en soudure. Vous pouvez probablement construire ce projet avec succès si vous n'avez aucun ex
Contrôleur de jeu DIY basé sur Arduino - Contrôleur de jeu Arduino PS2 - Jouer à Tekken avec la manette de jeu DIY Arduino : 7 étapes
Contrôleur de jeu DIY basé sur Arduino | Contrôleur de jeu Arduino PS2 | Jouer à Tekken avec la manette de jeu DIY Arduino : Bonjour les gars, jouer à des jeux est toujours amusant, mais jouer avec votre propre contrôleur de jeu personnalisé DIY est plus amusant. Nous allons donc créer un contrôleur de jeu utilisant arduino pro micro dans cette instructables
Contrôleur de jeu Arduino + jeu Unity : 5 étapes
Contrôleur de jeu Arduino + jeu Unity : dans cette instructable, je vais vous montrer comment créer/programmer un contrôleur de jeu arduino qui peut se connecter à l'unité
Contrôleur de jeu Arduino avec lumières répondant à votre jeu Unity :: 24 étapes
Contrôleur de jeu Arduino avec des lumières répondant à votre jeu Unity :: Tout d'abord, j'ai écrit cette chose en mots. C'est la première fois que j'utilise instructable, donc chaque fois que je dis : écrivez le code comme si sachez que je fais référence à l'image en haut de cette étape. Dans ce projet, j'utilise 2 arduino pour exécuter 2 bits séparés
Console de jeu Arduino Pocket + A-Maze - Jeu de labyrinthe : 6 étapes (avec photos)
Arduino Pocket Game Console + A-Maze - Maze Game : Bienvenue dans mon premier instructable ! Le projet que je veux partager avec vous aujourd'hui est le jeu de labyrinthe Arduino, qui est devenu une console de poche aussi performante qu'Arduboy et des consoles similaires basées sur Arduino. Il peut être flashé avec mes (ou vos) futurs jeux grâce à expo