This is an old revision of the document!


TP 3 - Set up BBC micro:bit

Support pour TP

Objectifs du TP

  • Connexion du micro:bit au ordinateur
  • Chargement de programmes au micro:bit

Présentation du BBC micro:bit V2

BBC micro:bit est une plaque de développement qui utilise un microcontrôleur. Ce dispositif a pour but d’offrir les étudiants un bon commencement pour développer ses compétences en programmation.

Micro:bit V2 est un ARM Cortex M4, petit et facile d’utiliser. Il est prévu avec 25 LED, sur lesquelles on peut afficher des messages ou des images. Il est prévu, aussi, avec u accéléromètre, qui peut détecter les mouvements, un bussole, Bluetooth, deux buttons, à travers lequel il peut interagir avec l’utilisateur et des autres d’autres capteurs que nous découvrirons au cours du TP.

Les programmes seront écrits sur l’ordinateur et après ils seront chargés sur le micr:obit. Ces programmes restent sur la mémoire flash et ils vont être exécutés quand le microcontrôleur est alimenté.

Qu’est-ce qu'un microcontrôleur?

Le microcontrôleur et un ordinateur réduit dans un seul chip, qui peut exécuter un programme à la fois et consommer beaucoup moins qu’un ordinateur portable ou un ordinateur. En plus, elles sont bonnes pour contrôler et détecter les signaux électriques a l’aide de ses broches. Pour plus des infos tu peux cliquer sur ce lien.

Set up

Pour le déploiement des TP, on va utiliser Micropython pour écrire des programmes sur micro:bit. Micropython est un langage de programmation crée pour travailler avec des microcontrôleurs.

Si vous avez une BBC micro:bit V2 passez à la section "La connexion du micro:bit".

Si tu n'as pas un BBC micro:bit suivez les instructions ci-dessous pour utiliser le simulateur.

Utilisation du simulateur Micropython

Le simulateur MicroPython peut également être utilisé pour réaliser les laboratoires. Pour pouvoir l'utiliser, vous devez taper les commandes suivantes dans le terminal, si vous utilisez Windows, tapez les commandes dans cmd.

Si vous n'avez pas installé Python3 ou si vous n'êtes pas sûr de l'avoir, suivez les étapes de ce document.

L'étape suivante est de taper les commandes suivantes:

git clone https://github.com/ducklord420/PythonEditor.git
cd PythonEditor
git submodule update --init --recursive
py -m http.server --bind 0.0.0.0

Pour accéder le simulateur si vous utilisez Linux ou MacOS, tapez la commande:

$ firefox editor.html

Si vous utilisez Windows, vous pouvez soit utiliser la commande précédente, soit aller dans le dossier “PythonEditor” et cliquer sur “editor.html”.

Pour simuler le code, cliquez sur “Sim”. Testez l ' Exemple 1 du section suivante.

La connexion du micro:bit a l’ordinateur

Le premier pas pour connecter le microcontrôleur a l’ordinateur est d’utiliser le câble micro USB, qui a été reçu avec BBC micro:bit. Vous devez introduire le USB type B en haut du dispositif et l’autre terminaison de fil dans votre ordinateur.

Le premier programme écrit dans l'éditeur du code en ligne

Pour le développement des TP, on va écrire des programmes dans un éditeur du code en ligne, qui s'appellent Makecode.

Exemple 1

Le premier exemple qu’on va l'écrire sera l'affichage de texte “Hello” sur le 25 LED, suivi par l'abréviation “SdE”, qui toutefois va être stocke dans une variable.

from microbit import display  #import "diplay" from microbit library
 
name = "SdE" #declaration of a variable with a String
 
#all the code that is idented under the loop belongs to it
while True: #infinite looop
    # "display" is an object that refers to the LEDs, this method allows us to control them
    display.scroll("HELLO" + " " + name) # concatenation of Strings
 

Le chargement du programme sur micro:bit

Le transfert du programme s'appellent flashing, parce que le programme est copié dans la mémoire flash du micro:bit.

Première méthode: Le chargement du fichier .hex sur micro:bit

Après que vous avez eu connectée le microcontrôleur a l'ordinateur vous pouvez voir “MICROBIT” comme une clé USB.

L’étape suivante est de sauve-garder le programme comme un fichier .hex. Pour cela on doit appuyer sur le bouton “Load/Save”, alors il sera téléchargé, comme on peut voir dans l’image ci-dessous:

La dernière étape pour charger le programme sur micro:bit est d'ouvrir le dossier ou a été télécharge le fichier .hex et lui copier dans “MICROBIT”. se compilera automatiquement sur le microcontrôleur.

La deuxième méthode: Direct Flash

Pour cette méthode est suffisamment d’utiliser seulement l’éditeur de code en ligne dans un browser Chrome ou Edge.

La première étape est de connecter le dispositif en appuyant le bouton “Connect” depuis le menu de l’éditeur de code.

Une fenêtre similaire à celle ci-dessous apparaîtra. Il ne reste plus qu’à cliquer sur le dispositif “BBCmicrobit” que Makecode a détecte.

La dernière étape c’est d’appuyer le bouton “Flash”. Il y a possible que vous devez attendre quelques secondes jusqu’à le programme va être charge sur micro:bit.

Pour visualiser les messages imprimés dans la console, nous devons sélectionner l'option Open Serial , qui va ouvrir le terminal avec l'interpréteur du Python.

Programmes en Python

La plupart des langages de programmation tels que C,C++,Java, utilisent les accolades {} pour définir les blocs de code. Contrairement à cette convention, Python utilise l'indentation pour séparer les différentes séquences.

Un bloc de code (corps d'une fonction, contenu d'une boucle) commence avec la première ligne indentée et se finit lorsqu'on arrive à la première ligne qui ne respecte plus l'indentation. L'indentation doit etre consistente à l'intérieur d'un certain bloc.

Il faut tenir compte aussi du fait que si on a une ligne qui se termine par :, il est absolument nécessaire que la suivante soit indentée.

En général, on préfère un TAB pour l'indentation:

for i in range(1,11):
    print(i)
    if i == 5:
        break

Variables

Contrairement aux autres langages de programmation, en Python il ne faut pas déclarer les variables ou leur type avant de les utiliser. De ce point de vue, Python fait partie de la catégorie des langages de programmation dynamiquement typés, où le type des variables n'est interpété qu'au moment de l'exécution.

Variables numériques

Python supporte 2 types numériques: entiers et réels.

# Syntaxe pour déclarer un numéro entier:
myInt = 7
 
# Syntaxe pour déclarer un numéro réel:
myFloat = 7.0
myFloat = float(7)

Variables pour des chaînes de caractères

myString = 'hello'
myString = "hello"

On peut réaliser l'attribution des valeurs aux plusieurs variables simultanément, mais sans mélanger les valeurs numériques avec les strings:

# Instructions valides
a, b = 1, 2             
suma = a  + b
# Instructions valides
hello = "hello"
world = "world"
message = hello + " " + world
# Cela ne va pas fonctionner
 
one = 1
two = 2
three = 3
hello = "hello"
 
print (one + two + three + hello)

Pour pouvoir afficher le résultat de la concaténation précédente, on peut utiliser la fonction str, qui réalise la conversion des variables numériques dans des variables de type string:

one = 1
two = 2
three = 3
hello = "hello"
 
print ( str(one) + str(two) + str(three) + hello )

Structures de données

Listes

Les listes sont similaires aux array

Exercices

  1. Écrivez un programme qui en appuyant simultanément les boutons A et B, va afficher une image qui représente “OUI”. Si pas de boutons est appuyé sur l'écran va affiche une image qui représente “NON” “NON”. Voir les image sur documentation.
  2. Modifier l’exercice antérieur tel que en appuyant le bouton A va afficher sur l’écran la lettre “A” et en appuyant le bouton B va afficher sur l’écran la lettre “B”.
  3. Écrivez un programme qui affiche le nombre actuel de secousses sur l’écran. Lorsque le micro-bit enregistre 9 secousses, une image apparaît sur l’affichage.
  4. Créez un programme qui enregistre le nombre des inclinaisons à gauche et à droite. Chaque fois que le micro: bit est pointé dans l’un des deux côtés, il doit afficher sur l’écran le nombre actuel d’inclinaisons de ce côté. Hint: utilisez la méthode sleep
  5. Écrivez un programme qui en atteignant le logo (le capteur tactile) va faire toggle entre une image avec un diamant et une image avec un petit diamant.
  6. Écrivez un programme qui, lors de l’enregistrement d’un son, affichera une image sur l’écran et parlera avec la parole “ON”. Si aucun son n’est pas enregistré, l’affichage reste vide. Affichez le niveau sonore pour une action a votre choix (appui sur un bouton, logo tactile, inclinaison, etc.)
  7. Changer le code de exemple 7 pour que le micro:bit détecte la lumière pour utiliser le haut-parleur pour lire de la musique JUMP_UP, et lorsque la lumière est éteinte pour lire de la musique JUMP_DOWN. Pour accéder à la bibliothèque “musique”, voir la documentation.
sde2/laboratoare/02_microbit_fr.1615973377.txt.gz · Last modified: 2021/03/17 11:29 by alexandra.state2607
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0