Étape 2: Écrire votre croquis (Code)
J’ai cherché un croquis préexistant de cette chanson en particulier, mais je ne pouvais pas en trouver un. Puis j’ai pensé que peut-être je pourrais éditer une esquisse existante d’une mélodie différente, mais tous ceux que j’ai trouvé étaient assez complexe-plusieurs avec plus d’une centaine de lignes de code (sans oublier un circuit beaucoup plus complexe!) Avec peu de temps et de l’expérience, j’ai voulu écrire un code aussi simple et court que possible, alors j’ai opté pour mettre toutes les notes successivement sur une seule ligne de code. Le seul problème avec ce fut chaque tonalité serait jouée avec la même valeur (durée) et vous ne pouvait pas inclure les restes (pauses). Pour lutter contre ce problème, j’ai utilisé 4/4 temps et assignés un seul battement, ou noire, à chaque tonalité. Donc si une note particulière à la chanson a été tenue pour 3 beats (ou une note pointée de moitié) j’ai simplement entré cette note 3 fois. Par exemple si le milieu C (262) devaient être tendit pour 2 battements, je suis entré deux fois. Le piezo ne séparer notes identiques en succession donc cela fait une demi-note!) Pour tenir compte des restes, j’ai prolongé la durée de la note précédente pour remplir l’espace. J’ai en réalité le premier entrés restes comme un 0, en supposant que serait égal à 0 Hz ne son-mais il fait plutôt un horrible bourdonnement ! Bon, voici donc le code !
1 int speakerPin = 12 ;
2
3 int numTones = 62 ;
4 int tons [] = {587, 784, 880, 988, 988, 988, 988, 988, 988, 988, 932, 988, 784, 784, 784, 784, 784, 784, 784, 880, 988, 1047, 1047, 1319, 1319, 1319, 1319, 1175, 1047, 988, 988, 988, 784, 880, 988, 1047, 1047, 1319, 1319, 1319, 1319, 1175, 1047, 988, 988, 784, 784, 784, 784, 880, 988, 988, 988, 1047, 880 880, 880, 988 784, 784, 784 784} ;
5 / / Tu es mon rayon de soleil
6
7 void setup()
{8}
9 pour (int i = 0; i < numTones; i ++)
{10}
11 ton (speakerPin, tones[i]) ;
12 delay(290) ;
13}
14 noTone(speakerPin) ;
15}
16
17 void loop()
18 {}
19}
Vous pouvez copier et coller, imprimer et entrer le code vous-même, prenez-le de Codebender ou l’essayer ici même sur ce instructable, voir ci-dessous ! Vous voulez une chanson différente ? Il suffit de remplacer le code numérique sur la ligne 4 avec votre propre, modifier le nombre total de tons sur la canalisation 3 et ajuster le tempo avec la valeur de retard sur la ligne 12.