Ligne 505 : |
Ligne 505 : |
| </syntaxhighlight> | | </syntaxhighlight> |
| | | |
− | === Activer un relais === | + | === Jouer la mélodie d'une boîte à musique === |
| | | |
− | Pour activer un matériel électronique, il sera nécessaire d'utiliser un relais. | + | Pour activer un matériel électronique, il sera nécessaire d'utiliser un moteur. |
− | Dans notre cas, nous allons simplement allumer une lampe.
| |
| | | |
| ''' VIDEO ''' | | ''' VIDEO ''' |
Ligne 514 : |
Ligne 513 : |
| ==== Choix du matériel ==== | | ==== Choix du matériel ==== |
| | | |
− | * Pour le relais, nous avons choisis le Power Switch Tail, qui est un relais protégé par un boîtier (disponible sur le [https://shop.mchobby.be/breakout/1289-power-switch-tail-240v-ac-3232100012899.html shop]) | + | * Nous avons trouvé la boîte à musique dans le commerce. |
− | | + | * (disponible sur le [ shop]) |
| ==== Code ==== | | ==== Code ==== |
| | | |
Ligne 524 : |
Ligne 523 : |
| // ### ZONE HACK ### | | // ### ZONE HACK ### |
| | | |
− | // -- Relais -- | + | // -- Boite à musique -- |
− | #define RELAIS 12
| + | |
| | | |
| ... | | ... |
Ligne 537 : |
Ligne 536 : |
| // ### ZONE HACK ### | | // ### ZONE HACK ### |
| | | |
− | // Initialiser le relais
| + | |
− | pinMode( RELAIS , OUTPUT );
| |
| } | | } |
| </syntaxhighlight> | | </syntaxhighlight> |
| | | |
− | Dans les différentes phases, on va définir que uniquement l'alarme 1 possède l'activation du relais et les autres possèdent la mélodie. | + | Dans les différentes phases, on va définir que uniquement l'alarme 1 joue la musique de la boîte et les autres alarmes jouent la mélodie. |
| | | |
| <syntaxhighlight lang="c"> | | <syntaxhighlight lang="c"> |
Ligne 551 : |
Ligne 549 : |
| // Hack relais | | // Hack relais |
| if( alarmePos == 0) | | if( alarmePos == 0) |
− | activerRelais(); | + | activerBoite(); |
| // Sonnerie | | // Sonnerie |
| else | | else |
Ligne 562 : |
Ligne 560 : |
| void alarmePulse( int alarmePos ){ | | void alarmePulse( int alarmePos ){ |
| // Hack relais | | // Hack relais |
− | if( alarmePos == 0){} | + | if( alarmePos == 0) |
| + | jouerBoite(); |
| // Sonnerie | | // Sonnerie |
| else | | else |
Ligne 574 : |
Ligne 573 : |
| // Hack relais | | // Hack relais |
| if( alarmePos == 0) | | if( alarmePos == 0) |
− | stopRelais(); | + | stopBoite(); |
| // Sonnerie | | // Sonnerie |
| else | | else |
Ligne 581 : |
Ligne 580 : |
| </syntaxhighlight> | | </syntaxhighlight> |
| | | |
− | * '''activerRelais();''' dans cette fonction, il faudrait simplement activer le relais. | + | * '''activerBoite();''' dans cette fonction, il faudrait simplement activer le relais. |
− | * '''stopRelais();''' dans cette fonction, il faudrait simplement stopper le relais. | + | * '''jouerBoite''' |
| + | * '''stopBoite();''' dans cette fonction, il faudrait simplement stopper le relais. |
| | | |
| <syntaxhighlight lang="c"> | | <syntaxhighlight lang="c"> |
− | /*
| + | void activerBoite(){ |
− | * Exemple servo moteur | + | |
− | */
| + | } |
− | void activerRelais(){ | + | void jouerBoite(){ |
− | digitalWrite( RELAIS , HIGH); | + | |
| } | | } |
− | void stopRelais(){ | + | void stopBoite(){ |
− | digitalWrite( RELAIS , LOW); | + | |
| } | | } |
| </syntaxhighlight> | | </syntaxhighlight> |