Étape 5: Firmware
Le code de l’Arduino n’est pas très complex. Il a deux modes de fonctionnement, automatique et manuel. Le mode automatique fonctionne quand le commutateur « exécution » est retourné. Maintenant, il va marcher à travers toutes les étapes de séquenceur sur un intervalle défini par le bouton « tempo ». Sur chaque étape, il définira les multiplexeurs pour le bouton de droite et LED, dont la valeur sera traduite dans une note MIDI, qui est à son tour envoyer à la Meeblip par Serial1. (Remarque : sur les autres Arduinos que Leonardo, ceci pourrait juste être changé en série). Le mode manuel fonctionne de la même, mais il fonctionne instantanément (interrompt le processeur), avec le bouton droit marchant vers la droite et le bouton gauche de la marche dans le sens anti-horaire.
(Il y a aussi une fonction secrète où la position du bouton « de base » au démarrage de choisir si le séquenceur utilise un chromatique, diatonique ou blues échelle.)
On trouvera le code arduino dans « Meeblip_Project0_4.zip ». Ceci peut être téléchargé comme d’habitude à l’Arduino, mais vous aurez un temps de démarrage de quelques secondes. Je ne voulais pas cela, alors j’ai fait un Arduino comme ISP avec un autre Arduino et utilisé que pour charger le code. Aujourd'hui, l’instrument commence instantanément.
Du code a été modifié sur le Meeblip ainsi. Plus particulièrement les liaisons des boutons, mais il a aussi vérifie l’état de tous les boutons sur la mise en service et supprime l’utilisation de midi CC. Cela entraîne que la valeur d’un bouton a la valeur, est toujours le réglage qui vous pouvez entendre. En utilisant Arduino ISP et avrdude, j’ai téléchargé le firmware avec la commande suivante :
avrdude -P COM5 -b 19200 - c avrisp -p m32 -B 5 flash - U: w:meeblip-micro.hex - U lfuse:w:0xBF:m - U hfuse:w:0xD9:m eeprom:w:meeblip.eep - U
(On trouvera ici plus d’informations sur cela)
Les micro.hex et les micro.eep se trouvent dans « meeblip acoustique micro firmware.zip ».