TP micro:bit — Découverte

Denis Dréano
PROG4-01

TP micro:bit — Découverte

Objectifs cantonaux : ROBO (rattaché à O1.5, O1.6). Semaine dédoublée (×2, groupes A/B séparés).

Cours complet sur la plateforme Runestone de Cédric Donner : TP micro:bit — introduction.

Vous quittez pour quelques semaines le module tortue pour programmer un vrai petit ordinateur : le micro:bit. Vous connaissez déjà les instructions, les boucles for et les fonctions — ici, c’est le support matériel qui change, pas la logique de la programmation.

Qu’est-ce qu’un micro:bit ?

▷ Définition — micro:bit

Le BBC micro:bit est un microcontrôleur développé par la BBC pour l’enseignement de la programmation. C’est un mini-ordinateur programmable en Python, très répandu dans les écoles (environ 15 CHF).

Comme tout ordinateur, il contient les composants essentiels :

  • CPU — le processeur, « cerveau » qui exécute le programme
  • RAM — mémoire vive, stocke le programme et les données en cours d’exécution
  • Carte-mère — interconnecte tous les composants

Contrairement à votre ordinateur personnel, le micro:bit n’a ni écran classique, ni clavier, ni disque dur, ni système d’exploitation : c’est un écran de 25 LED (5×5) et deux boutons qui font office d’interface.

! Précautions d’usage

  • Le connecteur micro-USB est fragile : ne forcez jamais le câble.
  • Évitez de toucher les connecteurs à l’arrière (edge connectors) — une décharge électrostatique peut endommager l’appareil.
  • Manipulez le micro:bit par la tranche.

Exécuter un programme sur le micro:bit

◈ Les trois étapes

  1. Écrire le programme Python sur l’ordinateur (WebTigerPython)
  2. Flasher : transférer le programme sur le micro:bit par câble USB
  3. Exécuter le programme sur le processeur du micro:bit

▷ Mode simulation

WebTigerPython propose un micro:bit virtuel (mode simulation) : vous pouvez faire la plupart des exercices sans posséder de micro:bit physique. Utile si votre appareil n’est pas encore arrivé.

Afficher un texte

◈ Syntaxe — Module microbit

from microbit import *

Comme pour gturtle, il faut importer le module avant d’utiliser ses fonctions.

→ Exemple 1 — afficher un texte
from microbit import *

display.scroll("Salut !")
sleep(2000)
display.scroll("Comment vas-tu ?")

display.scroll("...") fait défiler le texte sur la matrice LED. sleep(2000) attend 2000 millisecondes (2 secondes) avant de continuer.

Modifiez le programme pour qu’il affiche 4 fois un texte de votre choix. Vous connaissez déjà l’outil pour cela : une boucle for.

→ Exemple 2 — répéter un affichage
from microbit import *

for _ in range(4):
    display.scroll("Vive l'informatique !")
    sleep(2000)

Afficher une image

▷ Définition — Image matricielle

Une image matricielle (bitmap) est composée de pixels. Sur le micro:bit, chaque pixel est une LED de la matrice 5×5, allumée ou éteinte.

◈ Syntaxe — Créer une image

from microbit import *

img = Image("09090:"
            "99999:"
            "99999:"
            "09990:"
            "00900")
display.show(img)

Chaque groupe de 5 chiffres (séparés par :) représente une ligne de 5 LED. 0 = éteinte, 9 = intensité maximale (des valeurs intermédiaires de 1 à 8 sont aussi possibles).

▷ Images intégrées

Le module microbit fournit de nombreuses images toutes faites : Image.HEART, Image.HAPPY, Image.SAD, Image.PACMAN, Image.GHOST, Image.SKULL, …

Exercice 1 — dessiner une croix

Sans exécuter le programme, devinez ce qu’il affiche, puis vérifiez en le flashant sur le micro:bit :

from microbit import *

img = Image("00000:"
            "09990:"
            "09090:"
            "09990:"
            "00000")

display.show(img)

Modifiez ensuite le programme pour afficher une croix (X) sur l’écran.

Exercice 2 — enchaîner deux images

Écrivez un programme qui affiche une image, attend 2 secondes, puis en affiche une autre (Image.PACMAN puis Image.GHOST).

! Attention

while n’est pas encore au programme — cette semaine, tous les exercices se résolvent avec ce que vous connaissez déjà (séquences d’instructions, boucle for). La boucle while arrive la semaine prochaine, et vous l’appliquerez immédiatement sur le micro:bit.

Devoir donné par Cédric

Terminer les exercices de découverte du micro:bit (affichage de texte et d’images).