Étape 4: Arduino Code
À ce stade, j’espère que vous avez obtenu le compilateur Arduino, que je vous en parlais plus tôt. De toute façon, ici, je vais poster mon code de version finale pour le mécanisme de toute boîte à musique. Sais qu’aucune modifications ne doivent être apportées au code pour cela de changer l’adaptation instrumentale.
Je vais également inclure mon dossier qui m’a aidé à apprendre à écrire les jingles musicaux simples avec la fonction de tonalité. Celui que j’ai fait, j’ai développé la chanson lettre à Élise. Vous pouvez changer le tempo, constate combien vous voulez, combien de temps vous voulez, exactement quelle fréquence chaque note est, etc.. Vous avez beaucoup de contrôle, mais cela signifie aussi il est tout à fait un peu de gâcher. Donc je vais être élaborer sur ce qui pourrait aller mal si vous ne vous sentez pas ma douleur.
Juste au cas où vous ne pouvez pas ouvrir les fichiers de code de Arduino, j’ai joint quelques documents qui vous suffit de copier et coller le code à la place. Il devrait fonctionner de la même manière. (Le FinalFinalFinal_attempt2 = finalisé Arduino Code... « Ils sont la même chose, donc ne soyez pas confus).
Donc je vais juste vous faire savoir comment faire pour changer ce que vous devez changer afin de faire d’autres chansons et faire d’autres choses cool avec elle.
Je vais commencer par la partie finalisé Arduino Code puisque c’est notre principale croquis ici après tout (je vais vous demander d’ouvrir le code pendant que vous lisez ce que vous puissiez voir de quoi je parle). Dans la partie supérieure de l’esquisse, vous verrez des épingles pour votre stepper, un temps de retard pour le stepper, les valeurs de capteur pour les résistances de la photo et le code pin de votre piezo. QUI ne doivent pas être touché nécessairement. Mais juste en dessous que la broche pour le piezo "const int buzzerPin = 5;", vous verrez tous les entiers importants pour la partie musicale.
int durée vous permettra de changer la durée des notes et combien de temps ils sont tendit. savoir combien de temps chaque boucle prend au processus.
int seuil vous permettra de modifier le montant de l’apport de lumière qui est nécessaire pour les résistances de photo activer et jouer une note. Plus il va, plus la lumière dont ils ont besoin pour activer. Si vous devez modifier cette valeur, parce que sa ne répond pas à la lumière qu’il faut, vous pouvez vérifier les relevés imprimés séries et vérifier quel est le montant de la résistance, ils lisent à un niveau de base sans lumière et puis avec la lumière. Vous pouvez alors mettre le seuil à un certain niveau entre cela.
int photoResistPins [6] = {A0, A1, A2, A3, A4, A5} ; Theres une ou deux choses, vous aurez envie de noter ici. Tout d’abord, je ne sais pas pour vous si vous pouvez utiliser toutes les résistances de photo plus de six pour ce projet si vous utilisez un Arduino UNO. Pour la simple raison qu’une résistance de photo d’une broche analogique et il n’ya pas assez analogiques broches sur la UNO. Peut-être avec un microcontrôleur avec plusieurs d'entre eux, nous pourrions créer encore plus de possibilités Remarque, mais à partir de ce projet avec un UNO, nous utiliserons seulement six résistances. Mais encore, cela nous laisse avec quelque chose autour de 30 à 40 notes ou plus. Sa toujours très bonne. Cette fonction va donc être celui qui les résistances photo d’affecter leur propre NIP. L’un moyen sa une broche analogique sur l’Arduino.
int onValue [6] = {1, 2, 4, 8, 16, 32}; Cette ligne assigne simplement les valeurs bool pour chaque combinaison de notes afin que le code plus tard puisse déterminer quels photo résistances sont activés. Ne dure cela sauf si vous souhaitez ajouter ou soustraire des résistances de photo pour une raison quelconque.
Si dans le setup Sub nous vraiment pas besoin de changer quoi que ce soit parce qu’il n’y a rien là qui pourraient être modifiées pour obtenir les nouvelles notes ou quoi que ce soit. Donc nous avons juste ne vous embêtez pas avec qui. Toutefois, dans la boucle Sub que nous pouvons toucher le boîtier commutateur fonction qui traverse et détermine quelle note jouer selon l’entrée il reçoit. Vous devriez voir une longue liste de choses appelées « cas 1... CAS2... case3... etc "qui détaillent chaque fréquence possible Remarque basée sur quelles résistances photo sont exposés à la lumière. Ici vous pouvez modifier les fréquences des notes ainsi que la façon dont beaucoup de notes y est disponibles pour être joué, ainsi que de quelles combinaisons de résistances photo sont exigés pour chaque note.
IMPORTANT : N’oubliez pas cette ligne de code vers le haut en haut où nous avons attribué des valeurs Boolean à la résistance de chaque photo ? C’est là, il devient important. Pour chaque combinaison de remarque, il faut additionner les valeurs bool pour chaque résistance de photo, que nous voulons être activé pour pouvoir jouer la fréquence dans ce cas précis. Si par exemple, la différence entre « affaire 1 » et « affaire 7 » est que "1" est juste la première résistance de photo (A0 qui a valeur bool 1) exposés à lumière tandis que « case 7 » est une combinaison de trois résistances de photo (A0, A1 et A2 = valeurs bool de 1, 2 et 4). Si vous ajoutez qu’il avait une valeur de 7. C’est pourquoi son « affaire 7 » et active uniquement lorsque ces résistances de trois photos sont exposées à la lumière.
Sachant tout ce que vous pouvez aller de l’avant et faire plus de combinaisons remarque en ajoutant différentes combinaisons des valeurs bool pour la résistance de chaque photo. Vous pouvez également modifier la valeur de fréquence juste en dessous.
C’est tout ce que vous avez vraiment besoin de s’inquiéter dans ce sketch, alors Amusez-vous à expérimenter avec lui !
Et juste pour le fun, je vais inclure mon esquisse de la lettre à Élise qui vous permet d’avoir juste une pièce de théâtre piezo une chanson pour vous. Dans ce document, vous pouvez spécifier combien de notes souhaitées, de quelle fréquence vous souhaitez que les notes, combien de temps vous voulez la chanson à être en termes de beats, le tempo que vous voulez, et il vous permet d’écrire la chanson dans une seule longue ligne de code. comme on le voit en haut. Finalement, j’ai commencé puisqu’ils peuvent compter comme des variables différentes de commutation entre le capital et les lettres minuscules. Avoir du plaisir jouer avec ça aussi. Je pense pour commencer à travailler que j’ai pris le code base de la bibliothèque de l’Arduino d’exemples. Vous pouvez le trouver en cliquant sur fichier, exemples, puis 02.Digital, et vous verrez les fonctions de ton en bas.