This shows you the differences between two versions of the page.
sde2:laboratoare:11_microbit_fr [2021/05/26 10:40] ioana_maria.culic [Exercices] |
sde2:laboratoare:11_microbit_fr [2021/05/26 14:21] (current) ioana_maria.culic [UART] |
||
---|---|---|---|
Line 10: | Line 10: | ||
VirtualBox sera utilisé pour réaliser ce chapitre dans le laboratoire. Pour connecter la carte à la machine virtuelle, elle doit être installée [[https://www.virtualbox.org/wiki/Downloads|Extension Pack]] et intégré avec des extensions dans VirtualBox. | VirtualBox sera utilisé pour réaliser ce chapitre dans le laboratoire. Pour connecter la carte à la machine virtuelle, elle doit être installée [[https://www.virtualbox.org/wiki/Downloads|Extension Pack]] et intégré avec des extensions dans VirtualBox. | ||
- | Connectez le micro: bit à la machine virtuelle et ouvrez un terminal. Si vous n'avez pas encore installé le programme '' screen '', tapez la commande suivante: | + | Connectez le micro: bit à la machine virtuelle en selectionnant sélectionnez l'option **Devices->USB->Microbit**. |
+ | |||
+ | Apres, ouvrez un terminal et si vous n'avez pas encore installé le programme '' screen '', tapez la commande suivante: | ||
<code bash> | <code bash> | ||
Line 16: | Line 18: | ||
</code> | </code> | ||
- | <code python> | ||
- | def on_bluetooth_connected(): | ||
- | basic.show_icon(IconNames.HAPPY) | ||
- | bluetooth.on_bluetooth_connected(on_bluetooth_connected) | ||
- | |||
- | def on_bluetooth_disconnected(): | ||
- | basic.show_icon(IconNames.SAD) | ||
- | bluetooth.on_bluetooth_disconnected(on_bluetooth_disconnected) | ||
- | |||
- | </code> | ||
- | |||
- | |||
- | ===== Bitty Blue ===== | ||
- | Bitty Blue est une application pour iOS et Android qui vous permet de vous connecter à votre appareil BBC micro: bit via Bluetooth. | ||
- | Installez l'application pour [[https://play.google.com/store/apps/details?id=com.bittysoftware.bittyblue.BittyBlue&hl=en&gl=US|Android]] ou [[https://apps.apple. com / us / app / bitty-blue / id1239157896 | iOS]]. | ||
- | |||
- | === Exemple === | ||
- | |||
- | Dans l'exemple suivant, nous utiliserons la boussole. | ||
- | Téléchargez le code suivant sur la carte, puis connectez-la via Bluetooth à l'application Bitty Blue en appuyant sur le bouton // Scan //. Après la connexion, choisissez dans le menu de l'application Compass où vous pourrez voir en temps réel les coordonnées micro: bit sur la boussole. | ||
- | |||
- | |||
- | <code python> | ||
- | def on_bluetooth_connected(): | ||
- | basic.show_icon(IconNames.HAPPY) | ||
- | bluetooth.on_bluetooth_connected(on_bluetooth_connected) | ||
- | |||
- | def on_bluetooth_disconnected(): | ||
- | basic.show_icon(IconNames.SAD) | ||
- | bluetooth.on_bluetooth_disconnected(on_bluetooth_disconnected) | ||
- | |||
- | input.calibrate_compass() | ||
- | bluetooth.start_magnetometer_service() | ||
- | </code> | ||
- | ==== Exercices ==== | ||
L'étape suivante consiste à trouver le port auquel la carte est connectée, à l'aide de la commande: | L'étape suivante consiste à trouver le port auquel la carte est connectée, à l'aide de la commande: | ||
Line 68: | Line 35: | ||
Fonctions utiles dans le module ** uart **: | Fonctions utiles dans le module ** uart **: | ||
- | * ** microbit.uart.init (baudrate = 9600, bits = 8, parity = None, stop = 1, *, tx = None, rx = None) ** - initialise la communication avec la série. | + | * ** microbit.uart.init (baudrate = 9600, bits = 8, parity = None, stop = 1, *, tx = None, rx = None) ** - initialise la communication avec la série. |
- | "bauderate" - représente la vitesse de communication avec la série, il peut prendre les valeurs suivantes: 9600, 14400, 19200, 28800, 38400, 57600, 115200. | + | ''bauderate'' - représente la vitesse de communication avec la série, il peut prendre les valeurs suivantes: 9600, 14400, 19200, 28800, 38400, 57600, 115200. |
- | "bits" - représente le nombre de bits qui seront transmis. | + | ''bits'' - représente le nombre de bits qui seront transmis. |
'' parity '' - montre comment vérifier la parité; peut prendre les valeurs: Aucun, microbit.uart.ODD, microbit.uart.EVEN. | '' parity '' - montre comment vérifier la parité; peut prendre les valeurs: Aucun, microbit.uart.ODD, microbit.uart.EVEN. | ||
- | "stop" - représente le nombre de bits d'arrêt, dans le cas de cette plaque, la valeur est 1. | + | ''stop'' - représente le nombre de bits d'arrêt, dans le cas de cette plaque, la valeur est 1. |
* ** uart.any ** - renvoie // True // s'il attend des données, sinon il retournera // False //. | * ** uart.any ** - renvoie // True // s'il attend des données, sinon il retournera // False //. | ||
* ** uart.read ([nbytes]) ** - lecture de bits. Le paramètre // nbytes // est facultatif, mais s'il est spécifié, au plus nbytes seront lus. | * ** uart.read ([nbytes]) ** - lecture de bits. Le paramètre // nbytes // est facultatif, mais s'il est spécifié, au plus nbytes seront lus. | ||
Line 138: | Line 105: | ||
===== Exercices ===== | ===== Exercices ===== | ||
+ | - Ecrivez un programme en Python, qui envoie à l'ordinateur à un intervalle de 2 secondes une valeur des paramètres environnementaux (température, luminosité, niveau de bruit)). Exemple (temperature: 20) | ||
+ | - Ecrivez un programme en Python, qui avertit l'ordinateur par un message, si le logo ou les boutons ont été pressés sur le micro: bit, et si la plaque a été secouée, le programme arrêtera l'exécution. | ||
+ | - Simulez Chatbot. Écrivez un programme avec les fonctionnalités suivantes: | ||
+ | * Au début du programme, il envoie un message d'accueil à l'utilisateur (dans // ecran //), ex: // Hello! //. | ||
+ | * Si le micro: bit est secoué, le chatbot envoie un message "Can't respond" | ||
+ | * L'utilisateur peut envoyer des messages standard pour connaître les valeurs des paramètres environnementaux. Par exemple, si l'utilisateur entre le texte // light // le chatbot retournera la valeur du niveau de lumière enregistré par le micro: bit. Commandes similaires pour le reste des paramètres (par exemple température, son, boussole, accéléromètre) | ||
+ | * Activation de l'alarme: lorsque l'utilisateur entre le message "Alarm on", le micro: bit commence à s'allumer pendant 2 secondes et va donner une chanson de la bibliothèque // musique //. | ||
+ | * Pour terminer la "conversation" avec le chatbot, l'utilisateur enverra le message "Goodbye". Le chatbot enverra le même message. | ||
Line 157: | Line 131: | ||
En utilisant les services [[https://makecode.microbit.org/reference/bluetooth|bluetooth]], on peut utilise les fonctions suivantes: | En utilisant les services [[https://makecode.microbit.org/reference/bluetooth|bluetooth]], on peut utilise les fonctions suivantes: | ||
- | * ** bluetooth.on_bluetooth_connected () ** - il démarre un gestionnaire d'événements qui s'exécute tant que le microSbit est connecté à partir de Bluetooth. | + | * ** bluetooth.on_bluetooth_connected () ** - il démarre un gestionnaire d'événements qui s'exécute tant que le microSbit est connecté à partir de Bluetooth. |
* ** bluetooth.on_bluetooth_disconnected () ** - il démarre un gestionnaire d'événements qui s'exécute tant que le microSbit est déconnecté de Bluetooth. | * ** bluetooth.on_bluetooth_disconnected () ** - il démarre un gestionnaire d'événements qui s'exécute tant que le microSbit est déconnecté de Bluetooth. | ||
* ** bluetooth.start_accelerometer_service () ** - le service d'accéléromètre permet à un autre appareil, tel qu'un smartphone, de recevoir des données sans fil de l'accéléromètre micro: bit. Un accéléromètre détecte le mouvement. | * ** bluetooth.start_accelerometer_service () ** - le service d'accéléromètre permet à un autre appareil, tel qu'un smartphone, de recevoir des données sans fil de l'accéléromètre micro: bit. Un accéléromètre détecte le mouvement. | ||
Line 228: | Line 202: | ||
bluetooth.start_magnetometer_service() | bluetooth.start_magnetometer_service() | ||
</code> | </code> | ||
+ | |||
+ | ==== Exercice ==== | ||
+ | |||
+ | - Ecrivez un programme qui accède les fonctionnalités disponibles dans l'application Bity Blue et voyez comment il interagit avec le micro:bit. (polysquiggle, display control, animal magic). | ||