Jeu TETRIS contrôlé par la carte Micro:bit

Micro:bit 27-02-25
47 0

Plan du tutorial

1- Présenter le jeu Tetris

2- Fonctionnement de notre jeu

3- Matériel nécessaire

4- Câblage des composants du projet

5- Algorithme du jeu Tetris

 

 

Présenter le jeu Tetris

Tetris est un jeu vidéo de puzzle emblématique créé en 1984 par Alexey Pajitnov, un ingénieur russe. Le principe est simple mais addictif : des formes géométriques appelées tetriminos tombent du haut de l'écran, et le joueur doit les empiler pour former des lignes complètes. Lorsqu'une ligne est complétée, elle disparaît, libérant de l'espace pour continuer à jouer.

Principes du jeu :

Tetriminos : Il existe 7 formes différentes (I, J, L, O, S, T, Z).

Rotation : Les pièces peuvent être tournées pour s'adapter aux espaces disponibles.

Chute et vitesse : Les pièces tombent progressivement, et la vitesse augmente avec le temps.

Game Over : La partie se termine si les blocs s'empilent jusqu'en haut de l'écran.

Depuis sa création, Tetris a été porté sur presque toutes les plateformes possibles : consoles, ordinateurs, téléphones et même des calculatrices ! Il a aussi inspiré des variantes comme Tetris 99 (une version battle royale) et Puyo Puyo Tetris (un mix avec un autre jeu de puzzle).

Fonctionnement de notre jeu

Ce projet consiste à recréer Tetris sur une carte micro:bit, en utilisant un écran LCD I2C pour afficher le jeu. Les boutons A et B du micro:bit servent à déplacer et faire tourner les blocs (tetriminos).

1- Affichage des Tetriminos sur l'écran LCD

2- Contrôles avec les boutons du micro:bit :

Bouton A → Déplacer la pièce à gauche

Bouton B → Déplacer la pièce à droite

A + B en même temps → Faire pivoter la pièce

3- Gestion de la gravité : les blocs tombent automatiquement

4- Détection des collisions avec d'autres blocs ou les bords

5- Effacement des lignes complètes et augmentation de la vitesse

6- Fin de partie lorsque la pile atteint le haut de l'écran

 

Matériel nécessaire

Carte BBC micro:bit

Micro:bit board

C'est le microcontrôleur qui exécute le code du jeu Tetris. Il gère l'affichage sur l'écran LCD, détecte les appuis sur les boutons et met à jour la logique du jeu.

Carte d'extension GPIO pour Micro:bit

The GPIO expansion card for the Micro:bit card

La carte GPIO Facilite l'accès aux broches GPIO du micro:bit pour connecter plusieurs composants (LCD, boutons, alimentation).

Afficheur LCD I2C (16x2 ou 20x4)

Pinouts of 1602 LCD display with I2C

L'écrant LCD affiche le jeu Tetris sous forme de caractères ASCII. Les pièces et l'état du jeu sont représentés sur l'écran.

Breadboard (Plaque de prototypage)

plaque d'essai

Cette plaque facilite les connexions électriques entre le micro:bit et les autres composants sans soudure.

Fils de connexion (Dupont)

Fils de connexion

Les fils de connexion relient les différents composants entre eux.

Câblage des composants du projet

Connecter les broches de l'afficheur LCD:

SCLP19(Mi:crobit)

SDAP20(Mi:crobit)

VCC5V(Carte GPIO pour Micro:bit)

GNDGND(Mi:crobit)

 

Algorithme du jeu Tetris

Voici l’algorithme détaillé du jeu Tetris sur micro:bit, où les boutons A et B contrôlent les pièces affichées sur un écran LCD I2C.

1. Initialisation du système

Objectif : Configurer les composants et les variables nécessaires.

Importer la bibliothèque de l'écran LCD I2C.

Initialiser l’écran LCD I2C avec son adresse (ex: 0x27).

2. Boucle Principale du Jeu

Objectif : Gérer la descente des pièces, les contrôles et la logique du jeu.

Tant que la partie n'est pas terminée :

a- Générer une nouvelle pièce

b- Choisir aléatoirement un tetrimino parmi les 7 formes (I, J, L, O, S, T, Z).

c- Placer la pièce en haut de l’écran.

3. Affichage de la grille et de la pièce

- Effacer l’écran LCD.

- Dessiner le tetrimino actif à sa position actuelle.

4. Contrôler la pièce avec les boutons A et B

Objectif : Déplacer et tourner la pièce en fonction des boutons pressés.

Si bouton A pressé :

- Vérifier si le déplacement vers la gauche est possible.

- Déplacer la pièce vers la gauche si aucune collision.

Si bouton B pressé :

- Vérifier si le déplacement vers la droite est possible.

- Déplacer la pièce vers la droite si aucune collision.

Si bouton A + B pressés ensemble :

- Appliquer une rotation à la pièce si possible.

- Vérifier si la nouvelle position après rotation est valide.

5. Faire descendre la pièce

Objectif : Gérer la gravité des pièces.

1- Vérifier si la descente est possible.

2- Si possible → déplacer la pièce vers le bas.

3- Sinon (collision avec un autre bloc ou le sol) :

  • Fixer la pièce dans la grille.
  • Vérifier s'il y a une ligne complète.

6. Vérifier et supprimer les lignes complètes

Objectif : Supprimer les lignes pleines et ajuster le score.

a) Parcourir chaque ligne de la grille.

b) Si une ligne est remplie (aucune case vide) :

- Effacer la ligne.

- Descendre toutes les lignes supérieures d’un cran.

- Ajouter des points au score (score += 10).

- Augmenter la vitesse progressivement.

7. Vérifier la condition de fin de jeu

Objectif : Détecter si le joueur a perdu.

Si un nouveau tetrimino ne peut pas apparaître, alors :

a- Effacer l’écran LCD.

b- Afficher "Game Over" + Score final.

c- Attendre un redémarrage manuel.

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

+216 92 886 231

medaliprof@gmail.com

Photos des articles

Site robotique réalisé par Mohamed Ali-Prof Info