Etape 10 : L’Arduino et Arduino code
Pour l’Arduino croquis pour compiler correctement vous aurez besoin de 2 bibliothèques :
Adafruit_NeoPixel.h que vous pouvez télécharger ici
LiquidCrystal_I2C.h que vous pouvez télécharger ici (version 2.0)
J’ai essayé d’ajouter autant de commentaires que possible dans le code. Si rien n’est pas clair, n’hésitez pas à poster un commentaire et de poser des questions. Ils peuvent aider beaucoup de gens.
Avoir un coup d’oeil dans le code que j’ai joint à cette étape.
Ici, vous pouvez sélectionner une couleur de départ pour la bande de LED s’allume au démarrage
#define STARTCOLOR 0xff8000
Datapin est le code pin choisi où sera connecté le vacarme de notre bande de LED
#define DATAPIN 5
Nombre de LED est le nombre réel des LEDs dans votre système
#define LEDCOUNT 232
Le taux en bauds ne doit pas être changée, ou il devra être modifié dans le fichier de config de Hyperion trop
#define BAUDRATE 500000
C’est le niveau de luminosité, vous souhaitez que votre bande de LED pour fonctionner à. Tests exigés dans votre environnement. sélection de 0 à 100
#define luminosité 90
Cette ligne ci-dessous est probablement la chose la plus difficile à comprendre et doit être modifié pour fonctionner dans votre configuration.
préfixe de const char [] = {0 x 41, 0 x 64, 0x61, 0 x 00, 0 x??, 0 x??} ;
Commencez par prendre les 4 premiers octets, il ne change jamais. Donc vous pouvez déjà écrire préfixe de const char [] = {0 x 41, 0 x 64, 0x61, 0 x 00, et il sera correct.
Ce n’est pas si mal en fin de compte. Pour la 5ème octet. Dans mon système, j’ai du 232LED. Le 5e calcul octet est pour soustraire 1 de mon numéro de del et transformer le résultat en valeur HEXADÉCIMALE. 232 - 1 = 231. 231 en hexadécimal = E7
Maintenant, il faut faire face à notre 6e octets. C’est une fonction « exclusive OR » ou la fonction XOR entre les numéros. Le premier numéro sera 55 et cela ne change jamais. Le 2ème numéro est votre octet 5 calculé. Dans mon cas c’est le E7.
Utilisez les octets suivants de 5e et 6e dans la ligne de code, remplacez la?? et vous avez terminé.
À la fin du code, dans la routine check_source(), c’est où vous pouvez modifier pour chaque source de l’information qui va être affiché sur l’écran LCD lorsque la source est sélectionnée comme TV ou PS4 ou ordinateur etc. etc....
Vous pouvez régler le curseur de l’écran LCD aussi bien d’avoir le nom imprimé imprimé dans le centre de l’écran LCD.
Une fois que vous êtes heureux avec votre code, vous pouvez télécharger sur votre Arduino et vérifier qu’il fonctionne correctement avec au moins l’écran LCD pour l’instant.
Notez qu’il faudra un bon 20 secondes pour commencer que j’ai ajouté des longs retards au début du code afin d’éviter d’avoir des redémarrages étranges de l’Arduino tandis que le Raspberry Pi a démarrer le système. Donc n’ayez pas peur si rien n’apparaît sur l’écran tout de suite. Une façon de dire que le code s’exécute, c’est que la LED de la touche ON/OFF doit s’allumer au démarrage.