Introduction
Combien de fois avez-vous entendu une chanson - à la radio, pendant un film, ou lors d’un concert - et pensé « Je souhaite que je pourrais jouer que l’homme » ? Maintenant vous pouvez ! Ce projet vous permet d’apprendre une chanson note par note sur le piano par allumage des diodes appropriées qui correspondent à chaque clé individuelle au piano. En effet, même si vous n’avez pas un piano, mais avez un plus petit clavier électronique, vous pouvez la personnaliser pour cela. Certains claviers électroniques ont réellement touches s’allume pour tout cela, mais faire sur un vrai piano est beaucoup plus satisfaisant. S’amuser et apprendre quelques chansons !
Les trois principales composantes de ce projet (comme beaucoup) sont :
1) logiciel
2) matériel (non électronique)
3) Electronique et câblage
Bien qu’ils soient des parties distinctes du projet, en réalité vous allez fréquemment travailler sur plus d’un à la fois simplement parce que comment vous décidez de faire une part affecte comment vous allez faire une autre. Une bonne chose à propos de les faire en parallèle, cependant, est que vous gardez une vue d’ensemble à l’esprit et si vous êtes fatigués d’écriture de code, vous pouvez concevoir vos pièces en acrylique, et si vous êtes fatigué de l’ordinateur tout à fait, vous pouvez câbler des résistances et des LEDs et de s’amuser avec qui. Les pièces sont dans un ordre spécifique dans le Instructable, mais comment tu fais, que c’est à vous.
Vue d’ensemble conceptuelle
La grande question quand j’ai commencé a été « comment diable individuellement contrôlez-vous 88 LEDs?!?! » Heureusement, après quelques recherches que j’ai trouvé quelques jetons conçus pour faire tout cela et quelques tutoriaux Arduino et le code qui a aidé le long du chemin. Mis à part cette question, tout le reste était assez simple, ou au moins ne m’obligeait à choisir parmi plusieurs options - ce qu’il faut faire la bande hors, comment tenir les LEDs en place, comment écrire le code pour le rendre tout courir et ainsi de suite. Nous allons parler de la grande question un peu plus en profondeur afin d’avoir une idée de comment tout cela fonctionne avant de commencer.
Les puces j’ai eu sont la matrice de LED (ou affichage 7 segments) pilotes, ce qui signifie qu’autant que la puce est concernée, nous avons nos LEDs câblées comme s’ils se trouvent dans une grille carrée, avec un certain nombre de lignes et de colonnes - les bornes positives sont communs dans chaque colonne, et les bornes négatives sont communs dans chaque ligne. Cela permet à 64 LEDs (dans une grille 8 x 8) est contrôlé par chaque puce et ne nécessite que trois entrées de contrôle (c’est juste trois!!!). Peu importe qui ou combien des LEDs que vous voulez mettre en marche, le système peut le manipuler.
Mais attendez, si vous voulez allumer les LEDs (1,1) (2,2), ne serait pas qui aussi s’allument (1,2) et (2,1), parce que pour atteindre l’objectif initial toutes lignes 1-2 et colonnes 1 et 2 devra être sur ? C’est où l’horloge à l’intérieur de la puce est disponible en - les LEDs ne sont pas réellement sur en permanence. Plutôt, ils sont tellement vite que le œil humain les observe aussi en permanence sur clignotant. C’est comment indésirables LEDs peut rester éteint !
Donc même si nous voyons la bande comme juste une ligne de LED, ils sont câblés comme s’ils se trouvent dans deux matrices carrées - un 8 x 8 (première puce) et un 5 x 5 (deuxième puce), qui ajoute des clés jusqu'à 89 (la finale de la « ligne » de la matrice 5 x 5 a seulement 4 LEDs, donc cela nous amène à 88). Tour est joué !
Comment nous dire la puce qui LEDs pour éclairer ? Qui a tout fait à l’aide de nombres binaires. En utilisant un code emprunté des développeurs en ligne (voir le code d’attribution), j’ai créé le programme de telle sorte que tout ce que vous devez faire lors de la traduction d’une chanson est d’appeler la commande playKey(...). Cela joue la clé numérotée donnée, en commençant par 1 à gauche et se terminant par 88 à droite. Cette commande prend le numéro de clé et le traduit donc les puces peuvent accomplir leur devoir en procédant comme suit : le numéro de la touche se traduit par un nombre de lignes et de colonnes, qui est ensuite traduit en un numéro de ligne et un nombre binaire qui représente qui del doit être allumée (lire de gauche à droite, pas le droit). Par exemple, si j’appelle playKey(13), qui est A, les fonctions de traduisent cela en ligne 2, colonne 5 ; puis depuis 2 ^ 5 est de 32, ce qui serait le nombre qui va à la puce. Lecture de gauche à droite, 32 est 00000100, qui représente l’état de la deuxième rangée. Le même concept s’applique lorsque nous traitons avec éclairage LED multiples - il s’agit de nombres binaires ! Découvrez le code pour les fonctions exactes et un peu plus d’explications.
Enfin, il y a un potentiomètre attaché à elle pour contrôler le tempo - quelque chose de vraiment, vraiment important lorsque vous ne savez pas ce que vous faites...
NOTE : Ce n’était pas une Instructable facile d’écrire en raison de la complexité, c’était pour mettre le tout ensemble et que ça marche. N’hésitez pas à me faire savoir si quelque chose est confuse ou peu claire, ou si vous avez des questions précises !
Nous allons y aller !