Kidule Dé/Un peu de bruit
Maintenant, tu vas pouvoir faire des petits sons avec ton Kidule.
Sur le Kidule pic, il y a un buzzer (petit haut parleur).
Si on l'allume et l'éteint suffisamment rapidement (de 20 fois par seconde à 20'000 fois par seconde), on entend un son. Tu entends le son le plus bas que tu puisse entendre (20Hz) et le plus aigu (20'000Hz).
Pour cela, on va utiliser la même solution que l’on a utilisée pour faire clignoter: compter un certain nombre de fois que l’on entre dans la fonction et changer l'état du buzzer.
On va mettre tout ce qui est nécessaire dans GererSon
Dans FaireSon(), on met tous les paramètres du son. ATTENTION: il ne faut appeler FaireSon() qu'au début du son. Si on l'appelle tout le temps, ça ne fera pas l'effet voulu, car on recommencera tout le temps le son.
#include "HardwareDe.h"
int noBoucleSon = 0;
int periodeSon = 100;
int incrementPeriodeSon = 1;
long LongueurBip = 40000;
void GererSon()
{
noBoucleSon++;
if (LongueurBip > 0) {
if (noBoucleSon > periodeSon) {
noBoucleSon = 0;
periodeSon += incrementPeriodeSon;
Buzzer = ! Buzzer;
}
LongueurBip--;
}
else {
Buzzer = 1;
noBoucleSon = 0;
}
}
void FaireSon()
{
periodeSon = 100;
incrementPeriodeSon = 1;
LongueurBip = 200000;
}
byte DejaPresse = FALSE;
void loop()
{
if (Poussoir == Presse){
if (! DejaPresse){
DejaPresse = TRUE;
FaireSon();
}
}
else {
DejaPresse = FALSE;
}
GererSon();
}
Exercice 1
[modifier | modifier le wikicode]Essaie de mettre incrementPeriodeSon à -10 et periodeSon à 2000
écoute le nouveau son que ça fait
Maintenant tu es prêt pour finaliser ton jeu d'adresse sonore