Objectifs
- Manipuler un système embarqué ;
- Récupérer des informations via des capteurs ;
- Créer des événements grâce aux actionneurs ;
- Envoyer et recevoir des informations.
Projet - Créer le jeu de Pong sur micro:bit 🎮
Projet
Le projet se fait par groupe de 4
(2 binômes). Le but est de créer le jeu de Pong avec 2 cartes micro:bit, sans fil, à l'aide des boutons, de l'affichage LED, et la communication par radio.
Règles du jeu
- Chaque joueur contrôle une raquette sur sa carte (boutons A et B pour monter/descendre).
- Une balle se déplace entre les deux cartes.
- Si un joueur rate la balle, il perd un point.
- Le score est affiché ou compté à la fin (quand il n'y a plus de points).
🔧 Étapes à suivre
Étape 1 : Préparer la communication radio
- Dans les blocs Radio, ajoutez :
définir le groupe radio sur ...
au démarrage (il faut que les 2 micro:bits aient le même nombre).- Cela permet aux micro:bits de se parler.
Étape 2 : Gérer votre raquette
- Créez une variable
yRaquette
(valeur de départ = 2). - Quand on appuie sur A :
- Si
yRaquette > 0
, on la décrémente (on lui retire 1). - On envoie
raquette
et sa valeur par radio.
- Si
- Quand on appuie sur B :
- Si
yRaquette < 3
, on l’incrémente. - On envoie aussi
raquette
et sa valeur par radio.
- Si
Étape 3 : Réception de la raquette adverse
- Créez une variable
yAdverse
(valeur de départ = 2). - Quand on reçoit un nom et une valeur par radio :
- Si le nom est
"raquette"
, on metyAdverse = valeur reçue
.
- Si le nom est
Étape 4 : Affichage des raquettes
Dans une boucle toujours
:
- Effacer l'écran.
- Afficher votre raquette sur la colonne 0 :
allumer en x=0 y=yRaquette
allumer en x=10 y=yRaquette+1
- Afficher la raquette adverse sur la colonne 4.
Étape 5 : Gérer la balle
- Créez :
balleX
(valeur initiale = 1),balleY
(valeur initiale = 2),directionX
(= 1),directionY
(= 1),possedeBalle
(= vrai pour une seule carte).
- Si
possedeBalle = vrai
, affichez la balle (ex:allumer en x=balleX y=balleY
). - Ajoutez une pause (300 ms) pour ralentir le jeu.
- Calculez les prochaines coordonnées :
balleX + directionX
,balleY + directionY
- Si la balle touche le haut ou le bas, inversez
directionY
.
Étape 6 : Gérer les rebonds et la perte
- Si la balle va vers la colonne 0 :
- Si elle est sur votre raquette → rebond (inverser
directionX
) - Sinon →
possedeBalle = faux
, affichez une croix ❌
- Si elle est sur votre raquette → rebond (inverser
- Si la balle sort (x > 4) :
- Envoyer
ballY
par radio possedeBalle = faux
- Envoyer
Étape 7 : Réception de la balle
- Si vous recevez
ballY
:balleX = 0
balleY = 4 - valeur reçue
(effet miroir)directionX = 1
,possedeBalle = vrai
✅ À rendre
- Une démonstration fonctionnelle du jeu entre les 2 micro:bits.
- Un document word (avec noms et prénoms des membres du groupe) avec :
- Rôle de chaque binôme
- Fonctions principales réalisées
- Ce qui a bien ou mal fonctionné
- Le programme enregistré sous forme de lien MakeCode :
- Mettre vos noms dans
Project Title
- Cliquer sur
Partager le projet
- Copier le lien et l'intégrer dans le word
🧩 Pour aller plus loin (facultatif)
- Ajouter un système de score (variable + affichage).
- Accélérer la balle progressivement.
- Ajouter un son lors du rebond.
- Afficher un message de victoire/défaite.
🛠 Astuces
- Testez souvent à deux cartes.
- Ajoutez des
montrer nombre
pour vérifier les valeurs. - Travaillez étape par étape, commencez par les raquettes.