Étape 2: Le Code - projet CYZ_RGB (non, je ne sais pas ce que cela signifie que soit)
Si vous allez à la page de code de google CYZ_RGB, vous serez en mesure de Télécharger le firmware du projet. Il existe deux configurations différentes, maître et esclave, je ne sais pas encore si le maître des œuvres, ou ce qu’il fait, j’utilise l’esclave des constructions qui sont très bien pour mes besoins, à une exception près !
Je pense qu’il est supposé que vous allez faire tourner CYZ_RGB sur le matériel officiel de BlinkM, ou certains directement sorte de clone de celui-ci, et par conséquent le code est écrit pour supporter des LED RGB de Cathode commune (utilisation de dont BlinkM). J’ai un surplus de Common Anode RGB LED, donc j’ai dû faire une petite modification au code à l’appui.
Si vous vous souciez : dans le fichier cyz/io.h, où les bits sont définis pour activer, ou au large des ports spécifiques, j’ai échangé l’assignation de bits. Lorsqu’une couleur apparaît dans le code, le code pin va faible, afin qu’il peut couler courant de l’anode commune.
J’ai inclus mon fichier de Hex anode commune ci-dessous, dans le cas où c’est utile. Autre que le changement ci-dessus, il est identique à la dernière version de la config d’esclave sur la page de code de google.
Maintenant, vous avez le fichier .hex que vous souhaitez graver sur votre uC, laisse ainsi parle de programmeurs et de programmation. Il y a plusieurs grands instructables sur le sujet, mais mon préféré et celui qui m’a commencé avec l’AVR est ce un, l’environnement de développement de Ghetto. J’utilise le même programmateur, USBtinyISP de Adafruit, et c’est génial. J’ai commencé avec une planche de cible fait maison (berceau), mais ont acheté maintenant un Conseil tiny25/45/85 programmeur de TinkerStore, qui en est fait juste génial. Vous seriez très bien avec un berceau fait maison, ou juste programmation dans une maquette.
Suivez les instructions à l’environnement de développement de Ghetto pour charger ce code sur les puces, mais notez que vous utilisez un ATtiny45, alors votre commande avrdude doit refléter cette partie (t45). Évidemment, vous spécifiez également le nom du fichier .hex CYZ_RGB que vous utilisez trop.
Vous devez aussi être conscient des fusibles. Voici les paramètres dans les puces qui changent leur comportement. J’utilise un morceau de logiciel (windows) appelé Burn-O-Mat de AVR8 pour vérifier mes paramètres de fusible (vous pouvez également utiliser il comme un GUI pour avrdude). Il semble que de l’usine, mon Tiny45 ont le fusible « Horloge diviser par huit » déjà définie, cela doit être désactivé pour la puce à courir assez vite pour lisse s’estompe. Une seule puce j’utilisais a également eu la possibilité de stocker des données dans l’EEPROM désactivé, donc j’ai dû activer/désactiver ce fusible à (vous probablement ne sera pas besoin de le faire)
Maintenant, vous avez lu la GDE instructable, la ligne suivante...
avrdude - ch. t45-U - p usbtiny flash:w:cyzrgb_slave_CA.hex
... vous ne devriez pas paniquer. Si vous êtes un vrai keenie, vous avez probablement tous fait prêt, sinon, allez et programmer votre puce maintenant.
En supposant qu’il n’y a pas d’erreurs dans la sortie, vous devriez être bon d’aller.
Alors que nous sommes dans l’ambiance de programmation, vous devriez saisir votre Arduino comme nous avons obtenu charger une esquisse sur que trop. L’Arduino est va être utilisé pour contrôler les Pixels du Ghetto et forme un pont entre eux et votre ordinateur. Commencer avec, nous pouvons utiliser l’esquisse de communicator BlinkM pour le test, mais dans le temps, vous aurez probablement envie d’écrire votre propre plus adapté à votre application. L’esquisse BlinkM communicator est ici, et vous devez charger sur votre Arduino maintenant. Pendant que vous êtes sur le site BlinkM, téléchargez le séquenceur multipiste, vous aurez besoin que pour tester trop.
Avec votre puce fraîchement programmé et votre Arduino à vos côtés, il est temps d’enfourcher avec Das Blinkenlights!...