Guide du débutant pour Arduino (8 / 15 étapes)

Étape 8: Même plus de LEDs clignotantes

Programmation de la séquence de LED

Ouvrez l’exemple blink7.

Sur la ligne 3, vous verrez une nouvelle structure : ce que nous appelons un tableau. Un tableau est essentiellement une liste de variables, dans ce cas, c’est une liste de variables du type int. Nous utilisons des crochets pour indiquer que c’est un tableau. Pour initialiser le tableau, nous utilisons des supports incurvés, et les valeurs sont séparées par des virgules.

Lorsque nous voulons utiliser une valeur d’un tableau, nous devez spécifier quelle place dans le tableau, de que nous voulons que la valeur. Nous allons utiliser le tableau dans blink7 à titre d’exemple :

int tableau [] = {1,2,3,4,5,6,5,4,3,2} ;

Si nous voulons obtenir la première valeur du tableau, nous utilisons

Le zéro entre crochets est appelé l' indice. Les tableaux sont base zéro, cela signifie que le premier élément du tableau a l’index zéro. Cela peut être déroutant au début, par exemple, array [5] retourne 6, où vous attendez qu’il revienne 5.
Vous pouvez imaginer que cela peut causer beaucoup de problèmes... C’est pourquoi cette erreur a son propre nom : une erreur off-by-oneou hautbois , pour faire court.

Lorsque vous essayez de lire une valeur qui n’est pas à l’intérieur du tableau, tableau [10] par exemple, l’Arduino il suffit de lire le prochain endroit dans la mémoire, sans se rendre compte que la valeur il a lecture n’est plus une partie de la panoplie. Il vous donnera juste la valeur qu’il trouve à cet endroit particulier dans sa mémoire.
Mais les choses deviennent encore pire lorsque vous écrivez à un index en dehors du tableau, parce que vous pouvez être écrasant les autres données, comme des variables ou des morceaux de code qui se trouvent à cet endroit en mémoire ! Une mauvaise idée...

Si vous souhaitez déclarer un tableau sans initialisation à encore, vous pouvez utiliser

Notez que le 10 est le nombre d’éléments, tandis que le dernier élément sera tableau [9] !

Si vous l’initialisez sur la même ligne, comme dans blink7, l’IDE Arduino comptera les éléments pour vous, et vous n’avez pas à spécifier quoi que ce soit entre les crochets.

Si vous voulez connaître le nombre d’éléments dans le tableau, vous pouvez utiliser la fonction sizeof(array) . Cette fonction retourne la taille du tableau, en octets (1 octet = 8 bits). Ce n’est toutefois pas le nombre d’éléments, en blink7, sizeof(array) retournera le 20. C’est parce que chaque élément est un int et int 2 octets de longs. Ainsi le nombre total d’éléments est 20/2 = 10.
Nous utilisons ce sortir de notre boucle lorsque nous avons lu l’intégralité du tableau : tant que l’indice est inférieur au nombre d’éléments, nous pouvons lire en toute sécurité le tableau. Nous commençons avec i = 0, puisque le premier élément a l’index 0. Cette fois nous avons j’ai augmenter seulement avec 1. La notation « i ++ » est exactement le même que l’écriture ' i = i + 1', c’est juste plus courte. Une autre façon d’écrire cette serait ' i += 1'.

Depuis LED #1 est relié à la broche 2, LED #2 à la borne 4, 3 à 6, etc., nous multiplions le nombre de LED par 2 pour obtenir le nombre de broches.

Référence de l’Arduino : Array

Référence de l’Arduino : Sizeof

Référence de l’Arduino : incrément

Référence de l’Arduino : composé d’Addition

Vous pouvez modifier les valeurs dans le tableau pour faire votre propre séquence, et vous pourriez même ajouter ou supprimer des éléments, étant donné que nous avons fait notre programme indépendant de la longueur du tableau, en utilisant la fonction sizeof().

Résumé :

  • Un tableau est une liste de valeurs (ou caractères ou autres tableaux) et utilise les crochets]
  • Il s’agit de la déclaration d’un tableau: « int tableau [10]; »
  • Il s’agit de la déclaration et l’initialisation d’un tableau: ' int tableau [] = {1,2,3,4,5,6,5,4,3,2} ;
  • Les indices de tableau sont de base zéro, c'est-à-dire que le premier élément a indice 0
  • sizeof(Array) retourne la taille en octets du tableau
  • sizeof(Data Type) retourne la taille en octets du type de données
  • sizeof (tableau) / de sizeof (type de données du tableau) vous donne le nombre d’éléments dans le tableau

Extra : tableaux à 2 Dimensions (Matrices)

Dans un tableau, les éléments peuvent non seulement être des types de données, comme les entiers (ints), mais aussi d’autres tableaux. Cela vous permet d’avoir soi-disant tableaux à 2 dimensions, qui peuvent être comparées aux matrices.

Elle est utilisée dans l’exemple blink8 : maintenant vous pouvez définir le nombre de led et le retard dans le tableau.

Notez qu’il faut préciser toutes les dimensions, sauf la première entre les crochets, lorsque vous déclarez un tableau multidimensionnel.

La syntaxe pour obtenir une valeur hors de la matrice est

Ouvrez l’exemple matrix_sum. Cet exemple ne fera rien si vous le télécharger, il n’a pas les sorties, c’est juste pour des fins d’apprentissage.

Il crée 4 matrices (tableaux 2D), dont deux ont des valeurs. Puis il calcule simplement la somme de deux matrices et la matrice transposée pour la première.

Ceci est fait en utilisant des boucles for imbriquées. Vous pouvez suivre cette explication sur l’image ci-dessus.
Les nombres sont l’ordre de que la boucle for iront sur eux. i est utilisée pour les lignes, j pour les colonnes. Ils commencent à la première colonne et la première rangée (1,1) en notation matricielle, [0] [0] pour la notation de tableau, puis la colonne est incrémenté (1,2) ou [1] [0], la colonne est incrémentée à nouveau (1,3) ou [2] [0] quand j est incrémentée à nouveau, la j-boucle s’arrête, car j n’est plus inférieur à trois. J’ai est incrémenté, j remet à zéro: (2,1) ou [0] [1], j est incrémentée: (2,2) ou [1] [1], puis (2,3) ou [2] [1]. J’ai est incrémenté, j remet à zéro: (3,1) ou [2] [0], puis sur (3, 2) ou [2] [1] et enfin (3,3) ou [2,2]. Maintenant j quitte, puis je quitte aussi bien.

Le calcul de la matrice transposée est similaire, il permute simplement les colonnes et les lignes :

transposeMatrix [i] [j] = matrixA [j] [i] ;

À l’intérieur de ces tableaux, vous pouvez utiliser davantage de baies, essentiellement de créer des espaces multidimensionnels. En théorie, le nombre de dimensions est illimité, mais une fois que vous utilisez plus de trois dimensions, les choses se compliquent vraiment, donc les autres méthodes sont préférables.

Articles Liés

Guide d’installation rapide pour Arduino LCD 2004 avec PCF8574

Guide d’installation rapide pour Arduino LCD 2004 avec PCF8574

Il s'agit d'un guide d'installation rapide pour votre Arduino LCD.Ce que vous devez savoir avant de commencer :1. écrans LCD n'est pas créés égaux, certains ont des broches différentes que l'autre.2. principaux éléments de la mise en place : l'écran
Un Guide de débutants pour dispositifs logiques programmables

Un Guide de débutants pour dispositifs logiques programmables

J'ai mis ce instructable ensemble après avoir remarqué qu'il n'est pas vraiment quoi que ce soit sur le site Web sur les automates programmables industriels à l'exception d'une question et une instructable sur un programmateur (voir liens ci-dessous)
Guide #4 débutants Hardware Arduino partie 2

Guide #4 débutants Hardware Arduino partie 2

Suite à la partie 1, cette vidéo sur Arduino Hardware pour débutants jette un regard sur certains périphériques de nouvelle Arduino matériel pour vous rendre sur la route à un projet.Nous examinons ici les écrans Afficheurs à cristaux liquides (LCD)
Simple guide de débutants pour faire un « BIODIESEL » alimenté voiture

Simple guide de débutants pour faire un « BIODIESEL » alimenté voiture

plus personnes ne réalisent pas un moteur diesel peut fonctionner sur l'huile usée de friteuseIl s'agit en aucun cas une méthode parfaite, ou la meilleure façon de le faire, juste un moyen facile d'apprendre pour les débutants d'entrer dans ce. Consi
Guide du débutant pour la découpe de papier

Guide du débutant pour la découpe de papier

Voici un guide simple pour vous aider à faire des coupes de papier.J'ai eux font depuis plusieurs années et ont découvert qu'ils sont un très bon moyen de faire une belle carte, surtout quand le temps joue contre vous. Je fais ces chaque fois qu'un a
Guide #3 débutants Hardware Arduino partie 1

Guide #3 débutants Hardware Arduino partie 1

Parfois, c'est les petites choses dans la vie qui peut se transformer en grandes pierres d'achoppement, et cela vaut certainement pour noobs commençant leur voyage Arduino. Il était certainement si dans mon cas.Donc dans cette vidéo, j'ai aperçu quel
Un Guide de débutants pour l’émulation du monde.

Un Guide de débutants pour l’émulation du monde.

Avant de vous critiquez et dire que c'est illégal, il est seulement illégal si vous le marché des jeux.Émulation est mieux expliquée grâce à wikipedia, bien que vous y trouverez un petit résumé de ce nouveau monde impressionnant. Émulation est fondam
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
Guide d’achat pour Arduino Uno

Guide d’achat pour Arduino Uno

Choisir un Arduino acheter peut être source de confusion, surtout si vous envisagez d'acheter un Uno. Vendeurs en ligne peuvent omettre des renseignements importants, vendre obsolète ou mal au prix de planches, et certains peuvent être carrément trom
Guide d’assemblage V2 KIT de couleur RGB LCD Shield pour Arduino 65K

Guide d’assemblage V2 KIT de couleur RGB LCD Shield pour Arduino 65K

The RGB LCD shield pour Arduino 65K couleur KIT comprend tous les composants pour assembler un prêt à l'emploi LCD shield pour Arduino et conseils compatibles comme Freeduino.(visitez http://store.nkcelectronics.com/rgb-lcd-shield-for-arduino-65k-col
Arduino Anti vol alarme (avec sirène de Police): Remplir Guide de débutante

Arduino Anti vol alarme (avec sirène de Police): Remplir Guide de débutante

Vous ont peur des voleurs qui peuvent voler tous vos projets??? :) :) Puis cette l'INSTRUCTABLE parfait pour vous. Il s'agit d'une alarme antivol. Lorsqu'il n'y a aucun voleur autour, puis une LED bleue s'estomperont sur et en dehors ; mais si un vol
Un Guide complet des cavaliers à bord sur le kit Intel Edison pour Arduino

Un Guide complet des cavaliers à bord sur le kit Intel Edison pour Arduino

Intel® Edison kit pour Arduino permet l'Intel® Edison pour être compatible avec Arduino shields, conçus pour le R3 de UNO. La carte d'extension Arduino inclut plusieurs en-têtes de cavalier pour configurer le jury avec des paramètres différents comme
Guide du débutant à ESP8266 et Twitter à l’aide de ESP8266

Guide du débutant à ESP8266 et Twitter à l’aide de ESP8266

J'ai appris sur Arduino 2 ans. Alors j'ai commencé à jouer avec des choses simples comme LED, boutons, moteurs etc. Puis j'ai pensé qu'il ne serait pas cool de se connecter pour faire des choses comme l'affichage de la météo du jour, prix de stock, f
Construire un Quadcopter bricolage : Guide du débutant complet

Construire un Quadcopter bricolage : Guide du débutant complet

Il s'agit d'un véritable petit clip de mon quadcopter planant de haut en bas et déplaçant latéralement. J'ai essayé de garder la hauteur aussi minimes que possible car je suis à l'intérieur de mon salon, mais comme vous pouvez le voir, même avec ça i