Étape 7: L’Arduino programme esquisse
Le fichier esquisse - visualMusic.ino - a été commenté pour ce Instructable.
Les fichiers d’en-tête - MELODY_FILE.h, musicSymbols.h et gramophone.h - sont stockés dans des onglets, ce qui vous ouvrez à l’IDE Arduino.
Le dessin principal, visualMusic.ino est divisé en ces parties :
PARTIE UN - BIBLIOTHÈQUE HEADERS, CONSTANTES, VARIABLES GLOBALES
PARTIE DEUX - FONCTIONS POUR LE TRAITEMENT DE LA NOTE
playMusic fonction - cette fonction examine la mélodie chaîne du fichier de notes (qui sont écrits au format EML), sélectionne chaque segment séparé par des espaces (c'est-à-dire chaque note séparée) et envoie chaque segment en séquence à la fonction parseNote().
noteIndex fonction - donné un caractère représentant une note, noteIndex retourne la position à l’octave. Ceci est utilisé pour placer des notes sur l’écran. Exemple: « C » = > 0, a ' = > 1, « E » = > 2, « R » pour le reste = > 7.
parseNote fonction - parseNote reçoit une note de chaîne de playMusic et détermine la fréquence musicale et autres caractéristiques de cette note. Il passe ensuite ces valeurs à la fonction de gestionnaire de note nommée handleNote().
handleNote fonction c’est le « gestionnaire de note » - elle joue la note et dessine sur l’écran TFT.
Partie trois - setup() et loop() fonctions setup() appelle fonctions que dessiner des graphiques d’écran et jouent de la musique. Rien dans la loop() - parce que nous jouons la mélodie un nombre spécifié de fois, pas indéfiniment.
PARTIE QUATRE - FONCTIONS GRAPHIQUES
drawStaff fonction - tirages musical personnel lignes
eraseNotes fonction - efface une partie de l’écran avant de dessiner chaque note
Il y a six fonctions distinctes qui dessinent ensemble, moitié, quart, huitième, seizième et trente-deuxième notes.
draw_shapes fonction - utilise les données de le gramophone.h de fichier d’en-tête pour dessiner le graphique de gramophone utilisé sur l’écran titre.