| 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> |