Skip to content

Commit

Permalink
Exercices Piano:Bit (#63)
Browse files Browse the repository at this point in the history
* Exercices Piano:Bit

* Exo Piano:bit lumineux
  • Loading branch information
gquintana authored Apr 20, 2024
1 parent ef25b32 commit 07b82c8
Show file tree
Hide file tree
Showing 6 changed files with 238 additions and 0 deletions.
52 changes: 52 additions & 0 deletions src/books/microbit-exercices/30_piano_anniversaire/index.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
:doctitle: Jouer de la musique en lumière
:description: Utiliser le Piano:Bit pour jouer une mélodie
:keywords: microbit
:author: Gérald Quintana - MixTeen
:revdate: 2023-02-04
:category: Microbit
:teaser: Moyen
:imgteaser: micro-bit-piano-expansion-board-kubii.png

= Fiche 30: Jouer de la musique en lumière

Niveau: Moyen

Utiliser la carte d'extension Yahboom Piano
http://www.yahboom.net/study/piano_bit

== Blocs

* Entrée
** Lorsque le bouton ... pressé
* Piano
** Music Handle
** RGB Program Close et RGB_Program
* Neopixel
** Show color
** Set brightness
** Show

== Etape 0: Initialisation Piano:Bit

* Ajouter l'extension Piano:Bit
.. Rechercher *https://github.com/lzty634158/YB_Piano*
.. Sélectionner le paquet *Extension YahBoom YB_Piano*

== Etape 1: Souhaiter Joyeux anniversaire

* Lorsqu'on appuie sur le bouton A
** Jouer la mélodie *birthday*
** Afficher *Joyeux anniversaire*


== Etape 2: Allumer les bougies

* Faire clignoter les lumières en alternant les couleurs.
Pour allumer les lumières:
** Mettre un RGB Program Close au démarrage
** Choisir la couleur avec: RGB PRogram show color violet
** Choisir l'intensité avec: RGB PRogram set brightness 100 (maximum 255)
** Alumer avec: RGB Program show
** Eteindre avec: RGB Program clear

image:microbit-piano-neopixel.png[]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
83 changes: 83 additions & 0 deletions src/books/microbit-exercices/31_piano_instrument/index.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
:doctitle: Jouer du piano
:description: Jouer du piano avec plusieurs octaves
:keywords: microbit
:author: Gérald Quintana - MixTeen
:revdate: 2023-02-04
:category: Microbit
:teaser: Difficile
:imgteaser: ../30_piano_anniversaire/micro-bit-piano-expansion-board-kubii.png

= Fiche 30: Jouer du piano

Niveau: Difficile

Utiliser la carte d'extension Yahboom Piano
http://www.yahboom.net/study/piano_bit

== Blocs

* Base
** Au démarrage / Toujours
** Montrer nombre
* Variable
** Définir ... à ...
** Lorsque le bouton ... pressé
* Piano
** Music Touch Return
** RGB Program Close et RGB_Program
** Play piano ...
* Neopixel
** Set pixel color at ... to ...
** Show

== Etape 0: Initialisation Piano:Bit

* Ajouter l'extension Piano:Bit
.. Rechercher *https://github.com/lzty634158/YB_Piano*
.. Sélectionner le paquet *Extension YahBoom YB_Piano*

== Etape 1: Répérer les codes touches

* Au démarrage
** Initialiser les 3 LEDs avec RGB Program Close
* Toujours
** Stocker la valeur Music touch return dans une variable `touche`
** Afficher le nombre `touche`


== Etape 2: Jouer du piano

* Toujours
** Ajouter un bloc Play piano 1
** Essayer avec differents nombre 2, 3...
* Au démarrage
** Allumer la LED 1 (en face du M) en bleu

image:microbit-piano-neopixel.png[]

== Etape 3: Régler l'octave

* Toujours
** Si `touche=L` alors
*** Mettre 1 dans la variable `octave`
*** Allumer la LED 0 (en face du L)
** Si `touche=M` alors
*** Mettre 2 dans la variable `octave`
*** Allumer la LED 1 (en face du M)
** Si `touche=H` alors
*** Mettre 3 dans la variable `octave`
*** Allumer la LED 2 (en face du H)
** Jouer du piano avec `octave`

== Etape 4: Fonction

Le bloc suivant est répété 3 fois:

* Mettre X dans la variable `octave`
* Allumer la LED X

On va le mettre dans une fonction

. Créer un fonction `reglerOctave` qui prend en paramètre un nombre,
mettre le bloc ci-dessus.
. Appeler la fonction `reglerOctave` depuis le code principal
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
103 changes: 103 additions & 0 deletions src/books/microbit-exercices/32_piano_couleurs/index.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
:doctitle: Piano lumineux
:description: S'amuser avec les couleurs
:keywords: microbit
:author: Gérald Quintana - MixTeen
:revdate: 2023-02-04
:category: Microbit
:teaser: Moyen
:imgteaser: ../30_piano_anniversaire/micro-bit-piano-expansion-board-kubii.png

= Fiche 32: Piano lumineux

Niveau: Moyen

Utiliser la carte d'extension Yahboom Piano
http://www.yahboom.net/study/piano_bit

== Blocs

* Base
** Au démarrage / Toujours
* Logique
** Si ... alors
** Comparaison ... = ...
** Et logique
* Variables
** Définir ... à ...
** Modifier ... à ...
* Piano
** RGB Program Close
** Music Button C, D, etc.
** RGB Program
* Neopixel
** show color
** red ... green ... blue ...
** set pixel color at ... to ...
** show


== Etape 0: Initialisation Piano:Bit

* Ajouter l'extension Piano:Bit
.. Rechercher *https://github.com/lzty634158/YB_Piano*
.. Sélectionner le paquet *Extension YahBoom YB_Piano*

== Etape 1: Une couleur pour chaque touche

* Au démarrage
** Initialiser les 3 LEDs avec RGB Program Close
* Toujours
** Stocker la valeur Music touch return dans une variable `touche`
** Afficher le nombre `touche`
** Comparer la variable `touche` avec la touche C, D, E
** Pour chaque touche mettre une couleur différente

== Etape 2: Générer des nouvelles couleurs

Une couleur est constitué de 3 composantes rouge, vert et bleu.
Chacune d'elle peur aller de 0 à 255.
Par exemple pour affiche du:
[cols="2h,>1,>1,>1",options=header]
|===
| Couleur | R | V | B

| Rouge | 255 | 0 | 0
| Jaune | 255 | 255 | 0
| Vert | 0 | 255 | 0
| Turquoise / Cyan | 0 | 255 | 255
| Bleu | 0 | 0 | 255
| Violet / Magenta | 255 | 0 | 255
| Blanc | 255 | 255 | 255
| Gris | 64 | 64 | 64
| Noir | 0 | 0 | 0
|===

Comment faire du rose? Du bleu foncé?

* Créer 3 variables `R`, `V` et `B`, une pour a chaque composante
* Lorsque'on appuie sur
** la touche C, diminuer la composante `R`
** la touche D, augmenter la composante `R`
** la touche E, diminuer la composante `V`
** la touche F, augmenter la composante `V`
** la touche G, diminuer la composante `B`
** la touche A, augmenter la composante `B`
* Pour manipuler les variables (la traduction francaise est mauvaise)
** Pour ajouter 1 à une variable: modifier `X` de 1
** Pour enlever 1 à une variable: modifier `X` de -1
* Utiliser montrer nombre pour afficher la nouvel valeur de la composante modifiée
* Changer la couleur des LEDs, avec la couleur constitué par les 3 composantes `R`, `V` et `B`


== Etape 3: pour aller plus loin

* Comment faire pour que les 3 variables `R`, `V` et `B`restent dans l'intervalle 0-255
** ne dépassent pas 255 quand on augmente
** ne descendent pas en dessous de 0 quand on diminue
* Comment faire pour régler la couleur de chacune des 3 LEDs?
** Créer une variable `L` contenant le numéro de LED en cours de réglage
** Lorsqu'on appuie sur les touches L, M ou H mettre la valeur de `L` à 0, 1 ou 2
** Pour changer la valeur d'une seule LED utiliser
** set pixel color at `L` to ...
** show

0 comments on commit 07b82c8

Please sign in to comment.