Comment faire Bow de Zelda (7 / 8 étapes)

Étape 7: Arduino

Charger le code de l’Arduino dans le fichier ZIP sur le GEMMA. Vous aurez besoin de la bibliothèque Neopixel de Adafruit installé alors suivez les instructions dans le lien.

Vous pouvez ouvrir le code complet de Arduino dans le fichier ZIP dans l’IDE Arduino, donc je n’il suffit de coller le fichier de code entier ici. Au lieu de cela, je vais vous expliquer tout dans les sections. S’il vous plaît pardonnez la mise en forme de coller le code ici. Je vous promets que c’est beaucoup plus agréable dans le fichier de code réel.

#include < Adafruit_NeoPixel.h >

#define LED 1
#define BTN1 0
#define BTN2 2

int lastButton1State = faible ;
int lastButton2State = faible ;

Cette section inclut la bibliothèque de Neopixel qui fournit les méthodes de contrôle pour les lumières. La broche de LED sur le Gemma est 1, et les boutons sont sur 0 et 2. Si vous utilisez un Arduino différent ou un schéma de câblage, modifier ces ici. Enfin, nous stockons le dernier état de chacun des boutons afin que nous ne déclencher en permanence le comportement du bouton si vous maintenez le bouton enfoncé. Nous voulons seulement que cela se produise une fois par clic.

int ledCount = 56 ;

Paramètre 1 = nombre de pixels dans la bande de
Paramètre 2 = Numéro d’identification (la plupart sont valide)

Paramètre 3 = type de pixel drapeaux, additionner au besoin :
NEO_KHZ800 800 KHz bitstream (la plupart NeoPixel produits w/WS2812 LEDs)
NEO_KHZ400 400 KHz (classique « v1 » (pas v2) pixels de flore, WS2811 pilotes)
NEO_GRB Pixels sont câblés pour GRB bitstream (la plupart des produits NeoPixel)
NEO_RGB Pixels sont câblés pour RGB bitstream (v1 pixels de flore, pas v2)
Bande de Adafruit_NeoPixel = Adafruit_NeoPixel (ledCount, LED, NEO_GRB + NEO_KHZ800) ;

J’ai utilisé 56 LEDs dans ma construction, j’ai donc mis que comme une variable. L’objet de bande est initialisée à 56 LED, la broche LED définie et les valeurs pour Gemma et WS2812b type LED.

uint32_t couleurs [5] = {bande. Color (255, 255, 0), / / jaune
bande. Couleur (127, 0, 255) / / violet
bande. Couleur (0, 255, 0), / / vert
bande. Color (255, 0, 0), / / rouge
bande. Couleur (0, 0, 255);} bleu

currentColor int = 0 ;
int maxColor = 5 ;
int defaultBrightness = 50 ;

J’ai décidé d’utiliser 5 couleurs dans le cycle. Le jaune est la couleur standard, Zelda porte pourpre, et le reste avait juste l’air cool. Les valeurs currentColor et maxColor permettent de faire défiler les 5 couleurs. La luminosité maximale est 255, alors j’ai mis à 50 pour permettre beaucoup d’espace pour grandir dans le mode de tir.

void setup() {}
initialiser la tige poussoir comme entrée :
pinMode (BTN1, INPUT_PULLUP) ;
pinMode (BTN2, INPUT_PULLUP) ;

Strip.Begin() ;
pour (int i = 0; i < ledCount; i ++)
{
strip.setPixelColor (i, colors[currentColor]) ;
}
Obtenez plus lumineux
pour (int i = 5; i < defaultBrightness ; j’ai += 2).
{
strip.setBrightness(i) ;
Strip.Show() ;
Delay(50) ;
}
}

Il s’agit de la méthode appelée lorsque l’arc est allumé. Il initialise les boutons et les lumières, attribue la couleur jaune et augmente progressivement la luminosité de 0 à 50.

void loop() {}
pour (int i = 0; i < 2000; i ++)
{
int button1State = digitalRead(BTN1) ;

Si (button1State! = lastButton1State)
{
lastButton1State = button1State ;

Si (button1State == faible)
changeColor() ;
}

int button2State = digitalRead(BTN2) ;

Si (button2State! = lastButton2State)
{
lastButton2State = button2State ;

Si (button2State == faible)
fireArrow() ;
}

Delay(5) ;
}
Pulse() ;
}

C’est où l’Arduino sera en boucle la plupart du temps, attente d’un bouton. J’ai voulu les boutons pour être adapté aux besoins, alors il vérifie le bouton s’enclenche pendant environ 10 secondes (temps de 2000 itérations retarder un 5ms) avant il montre l’effet de pouls ralenti. Si une touche est pressée, elle montre que l’effet avant de retourner à cette méthode et poursuivant la boucle.

Sub pulse()
{
Obtenir légèrement gradateur
pour (int i = defaultBrightness; i > defaultBrightness / 2; i-= 5)
{
strip.setBrightness(i) ;
Strip.Show() ;
Delay(50) ;
}

Obtenez plus lumineux
pour (int i = defaultBrightness / 2; i < defaultBrightness ; j’ai += 5)
{
strip.setBrightness(i) ;
Strip.Show() ;
Delay(50) ;
}
}

Il s’agit de l’effet de ralenti. Nous voulons qu’elle soit rapide pour que nous ne manquez pas un clic sur un bouton. Il descend la luminosité par 5 chaque 50ms jusqu'à ce qu’il arrive à la moitié de la luminosité ralentie, puis retourne à la normale.

Sub changeColor()
{
currentColor ++ ;

Si (currentColor == maxColor)
{
currentColor = 0 ;
}

int i1 = 2 ;
int i2 = 27 ;
int i3 = 28 ;
i4 int = 55 ;

Parcourez et changer de couleur
pour (int i = 0; i < 14; i ++)
{
Jeu de couleurs
strip.setPixelColor (i1, colors[currentColor]) ;
strip.setPixelColor (i2, colors[currentColor]) ;
strip.setPixelColor (i3, colors[currentColor]) ;
strip.setPixelColor (i4, colors[currentColor]) ;

Mise à jour des itérateurs
Si (j’ai == 3)
I1 = 1 ;
else if (i == 4)
I1 = 6 ;
else if (i == 5)
I1 = 0 ;
else if (i == 6)
I1 = 7 ;
d’autre
I1 ++ ;

I2--;
I3 ++ ;
I4--;

Mise à jour et d’attendre un peu
Strip.Show() ;
Delay(50) ;
}
}

Lorsque l’utilisateur clique sur le bouton de changement de couleur, les LEDs sont remplacées par la couleur suivante de la boucle. J’ai fait les lumières commencent au milieu de l’arc et de modifier rapidement la couleur dans un effet de domino allant vers l’extérieur. Ce morceau de code est bizarre parce que les lumières sont d’une longue série, mais nous avons divisés en 4 sections. La première section est câblée différemment des autres 3 sections, donc l’itérateur i1 a besoin d’un traitement spécial pour suivre le bon ordre.

Sub fireArrow()
{
Obtenir légèrement gradateur
pour (int i = defaultBrightness; i > 20; i-= 5)
{
strip.setBrightness(i) ;
Strip.Show() ;
Delay(20) ;
}

Obtenez plus lumineux
pour (int i = 20 ; j’ai 250 <; i += 5)
{
strip.setBrightness(i) ;
Strip.Show() ;
Delay(30) ;
}

Séjour lumineux un peu
Delay(800) ;

Obtenir le gradateur
pour (int i = 250 ; j’ai > defaultBrightness; i-= 10)
{
strip.setBrightness(i) ;
Strip.Show() ;
Delay(30) ;
}
}

Enfin, l’effet de feu définit l’archet à pleine intensité pour peu moins d’une seconde, puis s’estompe vers le bas à inactif.

J’espère que tout cela est logique. Si vous souhaitez modifier les couleurs ou les effets, il devrait être assez facile de les ajuster.

Articles Liés

Comment faire la princesse Zelda bijoux et armure (Twilight Princess)

Comment faire la princesse Zelda bijoux et armure (Twilight Princess)

Ce tutoriel va vous montrer comment faire de la princesse Zelda armures et bijoux à l'aide d'argile de polymère et de mousse EVA !Étape 1: La Couronne Outils & matériaux :-Argile polymère or métallique (x2)-Hot pistolet à colle et colle chaude-Fil de
Comment faire l’épée de maître - Zelda : Ocarina of Time

Comment faire l’épée de maître - Zelda : Ocarina of Time

Dans l'apprentissage d'aujourd'hui j'ai va vous apprendre comment faire une épée de maître de con-prêt de Zelda : Ocarina of Time à l'aide de PVC et un large plateau thermoplastique !Étape 1: Voir la vidéoREGARDEZ LA VIDÉO ICIÊtes-vous prêt à faire u
Comment faire un Childrens Bow et flèches

Comment faire un Childrens Bow et flèches

il y a de nombreuses années, je suis venu maison d'une activité de louveteau avec un arc et des flèches, conçus pour le plaisir et la sécurité.  Finalement, les flèches disparus et tant fait la proue.  Quelques mois auparavant, mon petit-fils âgé de
Comment faire un Motif de cas crayon de la légende de Zelda

Comment faire un Motif de cas crayon de la légende de Zelda

Hey tout ce que vous instructa-people, prêt pour d'informations sur comment faire un décorateur cas crayon feutre cool ? C'est un Legend of Zelda un avec une triforce et l'épée.  Je suis sorte d'un tricheur que je n'ai effectivement pas le cas de cra
Comment faire un bow'n' flèche

Comment faire un bow'n' flèche

il s'agit d'un comment sur comment faire un bow'n' flèche qui a une portée d'environ 80 pieds et il porte uniquement sur les 4 morceaux (je m'excuse si j'ai juste fait sauter votre esprit, il m'arrive tout le temps) vous pouvez penser à vous-même, co
Comment faire un Bow - PVC arc - accès rapide et facile

Comment faire un Bow - PVC arc - accès rapide et facile

comment faire un Bow - PVC arc - accès rapide et facileDans cette vidéo, je vous montre les étapes pour vous rendre un arc simple du pvc.Vous n'avez pas besoin de chaleur ou remodelage du pvc pour ce faire, juste un simple couper et scier est nécessa
Comment faire un zelda de bande de conduit de bouclier et l’épée.

Comment faire un zelda de bande de conduit de bouclier et l’épée.

hey! aujourd'hui im va vous montrer comment faire un bouclier de duct tape zelda et l'épée. première ce que vous aurez besoin est, ruban blanc et gris,carton, crayons de couleur et une épée-jouet ancien. première ce que vous ferez vous coupez le cart
Comment faire un papier cadeau Bow (ruban) !

Comment faire un papier cadeau Bow (ruban) !

La vidéo suivante vous montrera comment faire un arc de cadeau papier ou ruban de cadeau. Vous pouvez utiliser n'importe quel type de papier pour faire cela.Vous devrez peut-être jamais acheter un ruban cadeau encore une fois; D !Bienvenue sur le pro
Comment faire un ruban Bow !

Comment faire un ruban Bow !

Hey Im Cloud9AJYT et je vous montrera comment faire un noeud de ruban conduit!! Vous aurez besoin :-Du ruban adhésif de votre choix-Ciseaux-Une règle-Une épingle à cheveux.Amusez-vous!Étape 1: Étape 1: choisir un ruban adhésif en toile.Choisissez un
Comment faire un collier de chien Bow

Comment faire un collier de chien Bow

j'ai fait un collier de chien de bande conduit dont je vais vous montrer comment faire. Il est effectivement très facile.Étape 1 : Tout d'abord vous aurez besoin d'une planche à découper ou quelque chose qui ne sera pas gâcher la bande. Vous aurez be
Comment faire un boomerang de zelda !

Comment faire un boomerang de zelda !

Lien a toujours eu un ami fidèle. Pas une épée ou un bouclier. Un boomerang. Je vais vous apprendre comment faire celui de « The Fantom Hourglass »Étape 1: matériaux CartonRuban adhésif en toile grisJaune et rougeÉtape 2: Boomerang de Link Couper le
Comment faire un petit arc et la flèche - trombone Mini Bow

Comment faire un petit arc et la flèche - trombone Mini Bow

dans cette vidéo, nous vous montrer comment faire un petit arc et flèche sertie de bureau et d'articles ménagers de fournitures.  Vous pouvez tirer les flèches sur des cibles ou à travers la pièce.  Juste faire attention ne pas de tirer sur quelqu'un
Comment faire un hornet papier Bow

Comment faire un hornet papier Bow

La plupart des gens poster une Instructable sur comment faire une arbalète hornet (bien que je n'ai pas vu ici, j'ai fait un, c'était tellement tellement). Mais, j'ai trouvé que mon arc est plus efficace avec les frelons qu'une arbalète, juste à caus
Comment faire un rapide, le puissant et le Bow à bas prix d’un cintre en plastique

Comment faire un rapide, le puissant et le Bow à bas prix d’un cintre en plastique

ce Instructable vous montrera comment faire un arc rapide, facile, avec des crayons pour les munitions.Vous aurez besoin :-A un cintre en plastique comme celle de l'image-A élastique-Crayons pour munitionsÉtape 1: « ficelant » la proue Tirer l'élasti