Differences

This shows you the differences between two versions of the page.

Link to this comparison view

sde2:laboratoare:02_simple_fr [2022/03/15 23:59]
cristiana.andrei [Blocks language]
sde2:laboratoare:02_simple_fr [2022/04/02 15:12] (current)
cristiana.andrei [Exercises]
Line 1: Line 1:
-====== TP 02 - BBC micro:bit et Makecode ​======+====== TP 02 - BBC micro:bit et MakeCode ​======
  
 ===== Objectifs du TP ===== ===== Objectifs du TP =====
   * Travail avec le micro:bit   * Travail avec le micro:bit
-  * Utilisation d'​editeur ​Makecode ​pour micro:bit+  * Utilisation d'​editeur ​MakeCode ​pour micro:bit
   * Introduction en Blocks language   * Introduction en Blocks language
  
Line 9: Line 9:
   *[[https://​microbit.org/​fr/​get-started/​first-steps/​introduction/​| BBC micro:bit]]   *[[https://​microbit.org/​fr/​get-started/​first-steps/​introduction/​| BBC micro:bit]]
   *[[https://​makecode.microbit.org/​blocks| Blocks language]]   *[[https://​makecode.microbit.org/​blocks| Blocks language]]
 +  *[[https://​makecode.microbit.org/​reference|Blocs utiles]]
  
 ===== Présentation du BBC micro:bit V2===== ===== Présentation du BBC micro:bit V2=====
Line 25: Line 26:
 {{ :​sde2:​laboratoare:​microbitv2.png?​600 |}} {{ :​sde2:​laboratoare:​microbitv2.png?​600 |}}
  
-===== L'​editeur ​Makecode ​pour micro:bit =====+===== L'​editeur ​MakeCode ​pour micro:bit =====
  
-**Microsoft ​Makecode** est cadre permettant de créer des expériences de programmation interactives et engageantes pour les nouveaux venus dans le monde de la programmation. La plate-forme fournit la base d'une expérience de codage sur mesure pour créer et exécuter des programmes utilisateur sur du matériel réel ou dans une cible simulée.+**Microsoft ​MakeCode** est cadre permettant de créer des expériences de programmation interactives et engageantes pour les nouveaux venus dans le monde de la programmation. La plate-forme fournit la base d'une expérience de codage sur mesure pour créer et exécuter des programmes utilisateur sur du matériel réel ou dans une cible simulée.
  
 Il se compose de 3 parties: Il se compose de 3 parties:
Line 41: Line 42:
 Les blocs se trouvent dans les catégories disponibles dans la boîte à outils des blocs alignés à côté de l'​espace de travail. Les blocs se trouvent dans les catégories disponibles dans la boîte à outils des blocs alignés à côté de l'​espace de travail.
  
-{{ :​sde2:​laboratoare:​block_editor.png?​600 |}}+{{ :​sde2:​laboratoare:​block_editor.png?​500 |}}
  
 ==== Language editor ==== ==== Language editor ====
Line 47: Line 48:
 **Un éditeur de langage** complète l'​éditeur de blocs dans MakeCode. Lorsque des blocs sont définis pour des fonctions, des instructions et des affectations,​ le code correspondant dans l'​éditeur de langage représente les blocs correspondants dans l'​éditeur de blocs. Dans l'​éditeur de langage, cependant, un utilisateur peut écrire du code supplémentaire avec une plus grande complexité que ce qui est disponible avec les blocs. **Un éditeur de langage** complète l'​éditeur de blocs dans MakeCode. Lorsque des blocs sont définis pour des fonctions, des instructions et des affectations,​ le code correspondant dans l'​éditeur de langage représente les blocs correspondants dans l'​éditeur de blocs. Dans l'​éditeur de langage, cependant, un utilisateur peut écrire du code supplémentaire avec une plus grande complexité que ce qui est disponible avec les blocs.
  
-{{ :​sde2:​laboratoare:​language_editor.png?​600 |}}+{{ :​sde2:​laboratoare:​language_editor.png?​500 |}}
  
 ==== Simulateur ==== ==== Simulateur ====
Line 55: Line 56:
 {{ :​sde2:​laboratoare:​microbit_simulator.png?​300 |}} {{ :​sde2:​laboratoare:​microbit_simulator.png?​300 |}}
  
-===== Le premier programme écrit dans Makecode ​=====+===== Le premier programme écrit dans MakeCode ​=====
  
 <note important>​ <note important>​
-Pendant les TPs on va utiliser l'​editeur [[https://​makecode.microbit.org/#​|Makecode ​pour micro:​bit]].+Pendant les TPs on va utiliser l'​editeur [[https://​makecode.microbit.org/#​|MakeCode ​pour micro:​bit]].
 </​note>​ </​note>​
  
 On va utiliser Blocks language pour afficher sur la matrice de LEDs du micro:bit le texte "Hello Sde2!"​. On va utiliser Blocks language pour afficher sur la matrice de LEDs du micro:bit le texte "Hello Sde2!"​.
  
-Premièrement,​ on va aller sur Makecode ​et cliquer sur //New Project//. Après ça, vous devez donner un nom à votre projet et appuyer sur //Create//.+Premièrement,​ on va aller sur MakeCode ​et cliquer sur //New Project//. Après ça, vous devez donner un nom à votre projet et appuyer sur //Create//.
  
 {{ :​sde2:​laboratoare:​create_new_project.png?​300 |}} {{ :​sde2:​laboratoare:​create_new_project.png?​300 |}}
Line 78: Line 79:
  
 {{ :​sde2:​laboratoare:​run_microbit_program.png?​300 |}} {{ :​sde2:​laboratoare:​run_microbit_program.png?​300 |}}
 +
 +=== on start vs. forever ===
 +
 +Le code qui se trouve à l'​intérieur du bloc **on start** est exécutée juste au début du programme. D’autre part, le code dans le bloc **forever** est exécutée tout au long de l'​exécution du programme, mais dans **background**,​ c’est a dire, si une autre partie du code doit être exécutée, la boucle forever va céder le temps à cette partie.  ​
  
  
Line 148: Line 153:
 La syntaxe d'un boucle **for**. La syntaxe d'un boucle **for**.
  
-{{ :​sde2:​laboratoare:​while.png?200 |}}+{{ :​sde2:​laboratoare:​for.png?200 |}}
  
 === Repeat === === Repeat ===
Line 173: Line 178:
   * **remove last value from [array_name]**:​ efface le dernier élément dans [array_name]   * **remove last value from [array_name]**:​ efface le dernier élément dans [array_name]
   * **remove first value from [array_name]**:​ efface le première élément dans [array_name]   * **remove first value from [array_name]**:​ efface le première élément dans [array_name]
-Le reste des blocs sont expliqués dans la [[https://​makecode.microbit.org/​reference/​arrays|documentation]].  ​+Le reste des blocs sont expliqués dans la [[https://​makecode.microbit.org/​reference/​arrays|documentation]]. 
 + 
 +===== Math ===== 
 +La catégorie //Math// contient des blocs pour des opérations mathématiques:​ 
 +  * **somme** 
 +  * **substraction** 
 +  * **multiplication** 
 +  * **division** 
 +  * **modulo** 
 +  * **minimum** 
 +  * **maximum** 
 +  * **valeur absolue** 
 +  * **radical** 
 +  * **random entre deux nombres** 
 +  * **aproximation** 
 + 
 +   
 +===== Basic ===== 
 +La catégorie //Basic// vous aide à utiliser quelques fonctions et actions de base du micro:​bit. 
 +  * **showNumber**:​ affiche un nombre donné comme paramètre sur la matrice de LEDs 
 +  * **showIcon**:​ dessine l'​image sélectionnée sur la matrice de LEDs 
 +  * **showLeds**:​ allume les LEDs sélectionnés 
 +  * **showString**:​ affiche un string donné comme paramètre sur la matrice de LEDs 
 +  * **clearScreen**:​ éteint tous les LEDs 
 +  * **pause**: arrête l'​execution pour un nombre de milisecondes donné 
 + 
 + 
 +===== LEDs ===== 
 + 
 +Le dispositif a une matrice de LEDs qui peut être contrôle individuellement ou tous ensemble pour pouvoir faire des dessins dur l'​écran. Chaque LED de la matrice est caractérisé par deux coordonne qui représente la ligne et la colonne ou il se trouve. 
 + 
 +<​note>​ 
 +x est la coordonnée verticale et y la coordonnée horizontale. 
 +</​note>​ 
 + 
 +Blocs pour la control de la matrice LED: 
 +  * **plot [x] [y]**: allumer le LED de la position (y,x) 
 +  * **unplot [x] [y]**: éteindre le LED de la position (y,x) 
 +  * **point [x] [y]**: retourne le status(allumé ou éteindré) du LED de la position (y,x) 
 +  * **toggle [x] [y]**: changer le status de la position (y,x) 
 +  * **plot bar graph of [inferior_limit] to [superior_limit]**:​ afficher un graphique de type barre pour une valeur numerique 
 + 
 +===== Butons ===== 
 + 
 +Sur le devant du dispositif il y a deux butons A et B, qui peut-être accéder dans le code avec buton_a et button_b. Ces boutons ont le bloc **on button [A/B] pressed** (catégorie //Input//), qui va retourne //True// si le bouton est appuyé, si non va retourne //False//. Le code qui se trouve dans **on button [A/B] pressed** est exécutée quand on fait click sur le buton. 
 + 
 +===== Images ===== 
 + 
 +<note important>​ 
 +Vous pouvez trouver des informations concernant le travail avec des images [[https://​makecode.microbit.org/​reference/​images|ici]].  
 +</​note>​ 
 + 
 +===== Exercises ===== 
 +  - Stockez votre nom dans un variable et affichez le sur la matrice de LEDs. 
 +  - Faitez le LED de la position (2,3) clignoter tout au long de l'​exécution du programme. 
 +  - Créez un programme qui affiche l'​image smiley face quand le buton A est appuyé et l'​image sad face quand le buton B est appuyé. 
 +  - Affichez tous les chiffres paires jusqu'​a 9 en utilisant la boucle for. 
 +  - Affichez tous les chiffres impaire jusqu'​a 9 en utilisant la boucle repeat. 
 +  - Créez un programme qui allume et clignoter les LEDs au dessus de la diagonale principale. 
 +  - Créez un programme qui allume un par un les LEDs(quand le LED suivant s'​allume,​ le LED en derrière s'​éteint) de la deuxième ligne. 
 +  - Créez un array avec 4 images. Affichez l'​image suivant quand on appuie sur le buton B et l'​image précédent quand on appuie sur le buton A. 
 + 
 +===== Solutions ===== 
 +Vous pouvez trouver les solutions [[https://​github.com/​UPB-FILS-SdE2/​Solutions/​tree/​microbit|ici]]. 
 + 
  
  
sde2/laboratoare/02_simple_fr.1647381579.txt.gz · Last modified: 2022/03/15 23:59 by cristiana.andrei
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