Étape 4: logiciels
Choix...
Quand il s’agit de logiciels vous avez plusieurs options, vous pouvez soit :
- Exécutez la matrice comme un périphérique autonome
- utiliser votre PC pour faire des images/animations pour la matrice
- ou venir avec votre propre idée (par exemple Connectez-le à un esp8266 pour afficher le contenu de l’internet
I. autonome
Viens jouer avec la bibliothèque de FastLED pour la plateforme Arduino. Il y a des tonnes de bons exemples en ligne, que vous pouvez trouver ici dans le dossier exemples. Vous devrez peut-être modifier quelques lignes dans les esquisses, tels que :
- le type de LED que vous utilisez (juste le changer en « WS2812 »).
- la quantité de LEDs consiste en votre matrice.
II. la matrice d’un PC de commande
Il s’agit de la façon dont je préfère le faire. GreatScott a récemment fait un bon tutoriel sur la façon d’utiliser le logiciel glediator. Il a également été abordée avec un croquis (un programme Arduino) qui fonctionne à merveille pour moi.
Cependant, j’ai eu envie d’écrire mon propre code et est venu avec ce script python. Juste s’assurer que vous avez choisi le bon port com en ligne 95 et exécuter sur votre ordinateur avec votre matrice branché dessus. Il (le script) aussi fonctionnent très bien avec les croquis de glediator de GreatScott, donc vous n’aurez à reprogramm votre Arduino. Notez que j’ai seulement testé avec Debian Linux, mais il ne devrait pas être trop compliqué de les amener à travailler sous Windows ou OSX. N’hésitez pas à copier et modifier le code pour s’adapter à vos besoins. Si vous avez des questions concernant le code, qui est un peu énigmatique, n’hésitez pas à demander dans les commentaires ci-dessous. Veillez également à consulter la page suivante, où je lance le Jeu de la vie de Conway sur la matrice.
Mais tout ce travail est comment exactement ?
La LED utilisée dans ce projet contiennent les registres à décalage, qui sont essentiellement de petits circuits qui peuvent contenir une petite quantité de données (sous forme d’uns et de zéros). Dans cette application les données stockées dans chaque quart de travail LED Registre représente sa couleur et se compose de 24 bits (8 bits par couleur). Le firmware en cours d’exécution sur l’Arduino reçoit des données par l’intermédiaire de communication série et puis il déplace par le biais de la guirlande de Maj registres/LED. L’Arduino lui-même traite la matrice comme si c’était une bande de LED normale (1 dimension). Mon script ci-dessous calcule chaque couleurs de pixels (RVB) et le stocke dans un tableau à 2 dimensions, qui représente essentiellement la matrice elle-même. Après avoir calculé les valeurs de RVB de chaque pixel (chacune représentée par une valeur comprise entre 0 et 255 [2⁸]), il procède alors en poussant ces valeurs à l’Arduino via un port série sur votre ordinateur. Cela se produit dans un ordre spécifique, étant donné que l’Arduino cant adresse les LEDs dans un genre cartésiens de passage (x, y). Les données sont poussées à un taux donné d’images par seconde, ce qui conduit à l’illusion d’un motif de déplacement/décoloration sur la matrice.