Comment passer le tableau à une fonction arduino

Comment passer le tableau à une fonction arduino
La programmation Arduino utilise des tableaux pour stocker plusieurs valeurs de données du même type de données, les tableaux sont comme des variables. Les tableaux et les variables sont une sorte de conteneur, mais les tableaux ont des séparateurs à l'intérieur des conteneurs pour stocker plusieurs données. La seule chose à noter est que les tableaux ne peuvent stocker des données qu'avec le même type de données. Voyons comment passer un tableau aux fonctions.

Passer un tableau pour fonctionner dans Arduino

La programmation Arduino ne permet pas de passer directement un tableau entier comme argument de fonction. Cependant, un pointeur peut être transmis à un tableau en spécifiant son nom.

Pour passer les tableaux de dimension unique comme argument fonction, nous devons considérer après les trois syntaxes donnés. Tous les trois sortiront le même résultat et indiqueront à l'IDE qu'un pointeur arrivera.

Syntaxe 1: Un pointeur avec des paramètres formels.

returnType functionName (dataType * param)

Syntaxe 2: Un pointeur avec un tableau de taille.

returnType functionName (dataType param [10])

Syntaxe 3: Un pointeur avec un tableau non signé.

returnType functionName (dataType param [])

Nous pouvons passer le tableau à la fonction Arduino en utilisant deux méthodes différentes:

  • Passer le tableau par type de tableau
  • Passer le tableau par type de pointeur

Passer le tableau par type de tableau

Maintenant, dans cette méthode, nous passerons un tableau à une fonction comme un argument de cette fonction. Prenons un exemple pour comprendre comment passer un tableau à une fonction.

Exemple de code

void affiche (int num [5]) / * La fonction affichage est initialisé * /
En série.println ("Éléments du tableau d'impression:");
pour (int i = 0; i < 5; ++i) /*For loop to print array elements*/
En série.print ("élément");
En série.imprimer (i + 1); / * Condition pour augmenter le nombre d'éléments à chaque fois que le code s'exécute * /
En série.imprimer(": ");
En série.println (num [i]); / * Le numéro d'élément est imprimé * /


void setup()
En série.commencer (9600); / * La communication série commence * /
int num [5] = 10, 20, 30, 40, 50; / * Éléments de tableau avec une taille initialisée * /
affichage (num); / * Éléments de tableau affichés * /
retour 0;

VOID LOOP ()

Dans le code ci-dessus d'abord, une nouvelle fonction avec le type de retour void est initialisée avec une taille de tableau de 5. Car la boucle est imprimée pour retourner les numéros de 1 à 5 chaque fois que le code s'exécute. Remarquez les paramètres de la fonction Void Affichage () Ici, nous avons utilisé la déclaration complète, y compris la taille du tableau et les paramètres de fonction avec les accolades carrées [].

Dans la partie boucle en utilisant Affichage (NUM) Nous appelons la fonction originale en passant un tableau comme argument. Ici nobs représente la première adresse mémoire d'élément.

Sortir

La fenêtre de sortie montre les éléments du tableau un par un. En utilisant une boucle pour les 5 éléments de tableau sont passés pour fonctionner.

Conclusion

La programmation Arduino comme C ++ ne permet pas de passer un tableau entier à une fonction, mais en utilisant un pointeur sur un tableau en spécifiant le nom du tableau donné, nous pouvons facilement transmettre des éléments de tableau à une fonction complètement. Trois syntaxes différentes sont suivies pour passer un tableau pour fonctionner. Cet article vous aidera à passer n'importe quel tableau pour fonctionner à l'intérieur du croquis Arduino.