Tutorial Arduino Bundle.: Kit d’expérimentation Arduino:. (ARDX) (4 / 13 étapes)

Étape 4:.: 8 LED Fun:. (Plusieurs del) - CIRC02


Ce que nous faisons :
Nous y avons fait une LED clignote, maintenant son temps à mettre les enjeux. Permet de connecter les huit. Nous aurons également l’occasion pour étirer l’Arduino un peu en créant diverses séquences d’éclairage. Ce circuit est aussi une belle configuration d’expérimenter avec vos propres programmes d’écriture et de se faire une idée de comment fonctionne l’Arduino.

Ainsi que de contrôler les voyants nous commencer à chercher dans quelques méthodes de programmation simples pour garder vos programmes petit.

boucles for () - utilisés lorsque vous souhaitez exécuter un morceau de code plusieurs fois.
[tableaux] - utilisé pour rendre plus facile de gestionnaires variables (c’est un groupe de variables)

(vous pouvez également télécharger la feuille du schéma maquette du fond de cette étape)

Les parties :

  • Feuille de CIRC-02 Breadboard
  • Réglette à broches 2 (x4)
  • LED de 5mm verte (x8)
  • 560 ohm résistance (vert-bleu-brun) (x8)

Le Circuit et brancher tout :
Une petite vidéo de tout étant branché

Le Code :

/* --------------------------------------------------------- * | Code de Kit exemple expérimentation Arduino | * | CIRC-02.: 8 LED Fun:. (Plusieurs del) | *---** Quelques animations Simple LED ** pour plus d’informations sur ce http://tinyurl.com/d2hrud circuit * * ///LED Pin Variablesint ledPins [] = {2,3,4,5,6,7,8,9} ; Un tableau de tenir la broche chaque LED est reliée à / / c'est-à-dire LED #0 est connecté à la broche 2, LED #1, 3 et donc sur l’adresse //to un tableau utiliser ledPins [0], cela équivaudrait à 2 //and ledPins [7] serait égal à 9 / * * setup() - cette fonction est exécutée une fois quand vous allumez votre Arduino * nous les tiges de trois contrôle sorties * / void setup() {//Set chaque broche reliée à une LED pour le mode de sortie (traction élevé (activé) ou faible (off) pour (int i = 0 ; J’ai < 8 ; i ++) {//this est une boucle et répéter huit fois pinMode(ledPins[i],OUTPUT) ; //we utiliser ceci pour définir chaque broche de LED pour la sortie} //the code cela remplace est ci-dessous / * (a commenté le code ne s’exécutera pas) * ce sont les lignes remplacés par la pour la boucle ci-dessus, ils font exactement la * même chose celui ci-dessus utilise juste moins frappe pinMode (ledPins [0] SORTIE) ; pinMode(ledPins[1],OUTPUT) ; pinMode(ledPins[2],OUTPUT) ; pinMode(ledPins[3],OUTPUT) ; pinMode(ledPins[4],OUTPUT) ; pinMode(ledPins[5],OUTPUT) ; pinMode(ledPins[6],OUTPUT) ; pinMode(ledPins[7],OUTPUT) ; (End of commented code) * /} / * * loop() - cette fonction débutera une fois l’installation terminée et puis répétez * on appelle une fonction nommée oneAfterAnother(). Si vous désirez un comportement différent * décommenter (supprimer les deux barres obliques) une des autres lignes * / void loop() / / run maintes et maintes fois {oneAfterAnotherNoLoop() ; //this volonté allumer chaque LED un tourner à chaque arrêt / / oneAfterAnotherLoop() ; //does le même qu’oneAfterAnotherNoLoop, mais avec beaucoup moins de taper / / oneOnAtATime() ; //this volonté tourner une LED sur le tour puis celle qui suit sur éteindre la //former (une LED va ressembler il défile le long de la ligne / / inAndOut() ; //lights le deux du milieu se déplace les sortir puis insérez-la à nouveau ensuite les LEDs} / * * oneAfterAnotherNoLoop() - s’allume une LED puis retarder pour /Delay puis lumière * la LED suivante jusqu'à ce que toutes les diodes sont là-dessus sera puis désactivez-les l’un après l’autre ** cela est-il sans utiliser une boucle qui fait pour beaucoup de frappe. * oneOnAtATimeLoop() fait exactement la même chose avec moins de typage * / void oneAfterAnotherNoLoop() {int delayTime = 100 ; //the temps (en millisecondes) pour faire une pause entre LEDs //make plus petite pour une commutation plus rapide et plus grande pour plus lent digitalWrite (ledPins [0], HIGH); //Turns sur LED #0 (connecté à la broche 2) delay(delayTime) ; //waits delayTime millisecondes digitalWrite (ledPins [1], HIGH); //Turns sur LED #1 (connecté à la broche 3) delay(delayTime) //waits /Delay millisecondes digitalWrite (ledPins [2] ÉLEVÉ) ; Allume la LED #2 (connecté à la borne 4) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [3], HIGH) ; Allume la LED #3 (relié à la broche 5) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [4], HIGH) ; Allume la LED #4 (relié à la broche 6) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [5], HIGH) ; Allume la LED #5 (relié à la broche 7) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [6], HIGH) ; Allume la LED #6 (connecté à la broche 8) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [7], HIGH) ; Allume la LED #7 (relié à la broche 9) delay(delayTime) ; attend /Delay millisecondes //Turns chaque LED éteinte digitalWrite (ledPins [7], faible) ; Allume la LED #0 (connecté à la broche 2) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [6], faible) ; Allume la LED #1 (connecté à la broche 3) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [5], faible) ; Allume la LED #2 (connecté à la borne 4) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [4], faible) ; Allume la LED #3 (relié à la broche 5) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [3], faible) ; Allume la LED #4 (relié à la broche 6) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [2], faible) ; Allume la LED #5 (relié à la broche 7) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [1], faible) ; Allume la LED #6 (connecté à la broche 8) delay(delayTime) ; attend /Delay millisecondes digitalWrite (ledPins [0], faible) ; Allume la LED #7 (relié à la broche 9) delay(delayTime) ; attend /Delay millisecondes} / * * oneAfterAnotherLoop() - s’allume une LED puis retarder pour /Delay puis lumière * la LED suivante jusqu'à ce que toutes les diodes sont là-dessus sera puis désactivez-les l’un après l’autre ** ceci le fait à l’aide d’une boucle qui rend beaucoup moins typage
. * que oneOnAtATimeNoLoop() fait exactement la même chose avec moins de typage * / void oneAfterAnotherLoop() {int /Delay = 100 ; //the temps (en millisecondes) pour faire une pause entre LEDs //make plus petite pour une commutation plus rapide et plus grande pour plus lentement / / allumer chaque LED l’un après l’autre pour (int j’ai = 0; j’ai < = 7; i ++) {digitalWrite (ledPins [i], HIGH); //Turns LED #i chaque fois que cela fonctionne j’ai delay(delayTime) ; //gets on ajoute donc cela se répète} //8 fois la première fois que j’ai va = 0 le //time final j’est égale à 7; //Turn chaque LED éteinte l’un après l’autre pour (int j’ai = 7; j’ai > = 0; i--) {//same comme ci-dessus, mais plutôt que commençant par 0 et compter jusqu'à //we commencer à sept ans et compte à rebours digitalWrite (ledPins [i], basse); //Turns del #i chaque fois que cela fonctionne j’ai delay(delayTime) ; //gets un il soustrait donc cela se répète} //8 fois la première fois j’ai sera = 7 la //time final j’est égale à 0 ; } / * * oneOnAtATime() - sera une lumière mena ensuite la prochaine éteindre tous les autres * / void oneOnAtATime() {int /Delay = 100 ; //the temps (en millisecondes) pour faire une pause entre LEDs //make plus petite pour une commutation plus rapide et plus grande pour plus lentement pour (int j’ai = 0; j’ai < = 7; i ++) {int offLED = i - 1; //Calculate qui LED a été tourné sur la dernière fois par if(i == 0) {//for j’ai = 1 à 7 C’est j’ai moins 1 (c'est-à-dire que si j’ai = 2, nous allons offLED = 7; //turn LED 2 et hors LED 1)} //however si j’ai = 0 on ne veut pas tourner de led -1 (n’existe pas) //instead nous éteindre la LED 7, (boucle autour) digitalWrite (ledPins [i], HIGH) ; allumer LED #i digitalWrite (ledPins [offLED], faible) ; éteindre la LED que nous avons tourné sur le dernier temps delay(delayTime) ; }} / * * inAndOut() - cela se met en marche les deux LEDs milieu puis les deux suivants sur * faisant un à regarder * / void inAndOut() {int /Delay = 100 ; //the temps (en millisecondes) pour faire une pause entre LEDs //make plus petite pour une commutation plus rapide et plus grande pour //runs plus lent les LEDs à partir du milieu pour (int j’ai = 0; j’ai < = 3; i ++) {int offLED = i - 1; //Calculate qui LED a été tourné sur la dernière fois par if(i == 0) {//for j’ai = 1 à 7, il s’agit J’ai moins 1 (c'est-à-dire que si j’ai = 2, nous allons offLED = 3; //turn LED 2 et éteindre la LED 1)} //however si j’ai = 0 on ne veut pas tourner de led -1 (n’existe pas) //instead nous éteindre la LED 7, (boucle autour) int onLED1 = 3 - i ; Il s’agit de la première LED pour aller ie. # LED3 lorsque j’ai = 0 et 0 # LED lorsque j’ai = 3 int onLED2 = 4 + i ; Il s’agit de la première LED pour aller ie. LED #4 lorsque j’ai = 0 et LED #7 quand j’ai = 3 int offLED1 = 3 - offLED ; s’éteint le voyant nous avons tourné sur dernier moment int offLED2 = 4 + offLED ; s’éteint le voyant nous avons tourné sur le dernier temps digitalWrite (ledPins [onLED1], HIGH) ; digitalWrite (ledPins [onLED2], HIGH) ; digitalWrite (ledPins [offLED1], faible) ; digitalWrite (ledPins [offLED2], faible) ; Delay(delayTime) ; } //runs les LED au milieu pour (int j’ai = 3; J’ai > = 0; i--) {int offLED = i + 1; //Calculate qui LED a été tourné sur la dernière fois par if(i == 3) {//for j’ai = 1 à 7 C’est j’ai moins 1 (c'est-à-dire que si j’ai = 2, nous allons offLED = 0; //turn LED 2 et éteindre la LED 1)} //however si j’ai = 0 on ne veut pas tourner de led -1 (n’existe pas) //instead nous éteindre la LED 7 , (boucle autour) int onLED1 = 3 - i ; Il s’agit de la première LED pour aller ie. # LED3 lorsque j’ai = 0 et 0 # LED lorsque j’ai = 3 int onLED2 = 4 + i ; Il s’agit de la première LED pour aller ie. LED #4 lorsque j’ai = 0 et LED #7 quand j’ai = 3 int offLED1 = 3 - offLED ; s’éteint le voyant nous avons tourné sur dernier moment int offLED2 = 4 + offLED ; s’éteint le voyant nous avons tourné sur le dernier temps digitalWrite (ledPins [onLED1], HIGH) ; digitalWrite (ledPins [onLED2], HIGH) ; digitalWrite (ledPins [offLED1], faible) ; digitalWrite (ledPins [offLED2], faible) ; Delay(delayTime) ; }}

Ne fonctionne ne pas ?

  • Certains voyants ne parviennent pas à la lumière - il est facile d’insérer une LED en arrière. Vérifiez les voyants qui ne fonctionnent pas et qu’ils assurent la bonne manière autour.
  • Fonctionnement hors séquence - avec huit fils il est facile de traverser un couple. Vérifier que la première LED est branchée sur broche 2 et chaque pin là après.
  • À partir de zéro - est facile à égarer accidentellement un fil sans s’en apercevoir. Tout en tirant et commençant par une ardoise de frais sont souvent plus facile que d’essayer de traquer le problème.

Ce qui en fait mieux :
Passage à boucles :
dans la fonction loop() il y a 4 lignes. Le dernier trois tous commencent avec un ' / /' cela signifie que la ligne est traitée comme un commentaire (ne fonctionne ne pas). Pour passer au programme d’utiliser les boucles modifier le code de void loop() pour :

Télécharger le programme et constate que rien n’a changé. Vous pouvez jeter un oeil à deux fonctions, chacun fait la même chose, mais utiliser différentes approches (allusion à la deuxième utilise une boucle for)

Animations supplémentaires :
Fatigué de cette animation ? Ensuite, essayez les deux autres animations de l’échantillon. Décommentez les lignes et télécharger le programme sur votre planche et profiter des lumière de nouvelles animations. (supprimer les barres obliques en face de la ligne 3, puis 4)

Tester vos propres Animations :
Plongez dans le code inclus et commencer à changer les choses. Le point principal est de transformer une LED sur utilisation digitalWrite (pinNumber, HIGH) ; puis de le désactiver utiliser digitalWrite (pinNumber, LOW);. Type de suite, peu importe ce que vous changez, vous ne cassez rien.

Articles Liés

Kit Robotica expérimental : Bluetooth

Kit Robotica expérimental : Bluetooth

ACÁ se explica como conectar el Bluetooth al kit de Robótica expérimentale de InventoríaÉtape 1: MaterialesDel ocupamos de kit :Módulo de bluetooth HC-06Femelle de câbles vers mâley y tuercasÉtape 2: Montado del módulo fr el chasis Étape 3: Conexione
Kit Robotica expérimental : Ensamblado

Kit Robotica expérimental : Ensamblado

Este es instructable para armar la base del robot de el Kit de Robótica expérimentale. la colección completa de instructables la encuentra acá.ACÁ proveemos los archivos de corte láser para construir robot este, aunque aucun kit d'el tenga.Este kit e
Expérimentateurs guident pour Arduino interprété à OIT

Expérimentateurs guident pour Arduino interprété à OIT

ressourcesAdafruit ARDX - v1.3 expérimentation Kit pour ArduinoGuide des expérimentateurs pour Arduino (PDF)Mises en page Conseil de pain (PDF)Tutorial Arduino Bundle (Instructable)Ce Arduino Tutorial va être très similaire à l'Arduino tutoriel Bundl
Portable et modulaire électronique Arduino expérimentateurs et réparation laboratoire mis en place.

Portable et modulaire électronique Arduino expérimentateurs et réparation laboratoire mis en place.

Il s'agit d'une configuration de laboratoire modulaire, portable que j'utilise pour profiter de prototypage et construire des projets électroniques avec l'Arduino. J'ai parfois voyager à l'étranger et prendre cela avec moi pour me distraire pendant l
Plateforme d’expérimentation pour la R3 Arduino UNO, comment se préparer pour une utilisation

Plateforme d’expérimentation pour la R3 Arduino UNO, comment se préparer pour une utilisation

Ce Instructable décrit comment configurer une plateforme expérimentale acrylique pour un Arduino UNO. Cette plateforme qui permet le montage d'un Arduino UNO ou clone et une planche à pain demi-taille est utile pour diverses expériences, comme la plu
Comment utiliser les Modules XBee comme émetteur & récepteur - Tutorial Arduino

Comment utiliser les Modules XBee comme émetteur & récepteur - Tutorial Arduino

Dans ce tutoriel, nous allons utiliser deux modules xBee (série 1) avec la carte de Arduino uno. Nous allons configurer d'agir comme un récepteur et un émetteur pour contrôler la luminosité d'une LED sans fil à l'aide d'un potentiomètre.La pile de pr
Tutorial Arduino : Capteurs tactiles capacitives

Tutorial Arduino : Capteurs tactiles capacitives

Bonjour à tous !Cette instructable est un tutoriel qui vous guidera sur l'utilisation des capteurs tactile capacitif avec Arduino. Un capteur capacitif est une sorte de capteur tactile, nécessitant peu ou pas de force à activer.Dans ce Instructable s
Guide complet de montage électronique expérimental : un méta Instructable

Guide complet de montage électronique expérimental : un méta Instructable

Montage expérimental parfois appelées cartes de prototypage ou proto planches sont un moyen rapide de travail vers le haut et l'expérimentation de circuits électroniques. Carte de prototypage de circuits étaient à l'origine circuits construits sur mo
Petite Station d’expérimentation électronique

Petite Station d’expérimentation électronique

Je fais beaucoup d'expérimentation électronique, avec Arduino et de composants discrets, mais je fais beaucoup d'autres faire aussi, donc je suis toujours à court d'espace pour mes projets en cours. Parfois mon workbench est littéralement enterrés po
Expérimentation de capteur piezo

Expérimentation de capteur piezo

Saviez-vous que vous pouvez utiliser le haut-parleur dans un vieux téléphone pour détecter si quelqu'un frappe à votre porte ? Ici, nous vous expliquerons comment Piezos travailler et donner quelques exemples de la façon dont ils pourraient être util
Expérimenter avec des champignons !

Expérimenter avec des champignons !

Mis à jour le 13 mars 2015 ***Non, pas comme ça. J'ai obtenu bien votre attention !Salut! Merci de vérifier sur mon Instructable ! Ce projet est présenté pour le concours de l'Exploration, et comme tel, je voudrais faire flatter un peu avant de comme
Expérimenter avec « bois silicone »

Expérimenter avec « bois silicone »

Avec un groupe de quatre étudiants en art, nous avons été mis au défi de développer un nouveau type de matériel. Ensemble, nous avons étudié le caoutchouc de silicone, et nous avons décidé d'utiliser ce matériau comme point de départ. Après beaucoup
Expérimenter avec une figurine d’argile de polymère compatible Lego

Expérimenter avec une figurine d’argile de polymère compatible Lego

j'ai fait ce chiffre personnalisé d'argile de polymère comme cadeau dans la première circonscription de cadeau Instructables. Comme la personne dépeinte utilise Lego comme moyen éducatif à titre professionnel, j'ai ajouté des choses suivantes :-Un éq
L’expérimentation MaKey maKey / Experimenteer met de MaKey MaKey

L’expérimentation MaKey maKey / Experimenteer met de MaKey MaKey

De MaKey MaKey est een handig hulpmiddel voor electronica-experimenten. Verander bijvoorbeeld alledaagse objecten en een toetsenbord de muis. Een MaKey MaKey koop je als pakketje fr bevat naast de MaKey MaKey zelf een USB-kabel fr krokodillenklemmetj