Arduino 2D Array

Ammar Ali 12 Oktober 2023
  1. 2D-Array-Initialisierung in Arduino
  2. Speichern von Daten in 2D Array in Arduino
  3. Ersetzen Sie einen Wert in 2D Array an einer bestimmten Position in Arduino
  4. Abrufen eines Werts von einer bestimmten Position in 2D Array in Arduino
  5. Arduino MatrixMath Bibliothek für 2D-Arrays
Arduino 2D Array

In diesem Tutorial werden wir 2D Array in Arduino diskutieren. Wir werden diskutieren, wie wir ein 2D-Array initialisieren und zum Speichern von Daten verwenden können.

2D-Array-Initialisierung in Arduino

Die 2D-Array-Initialisierung ist der 1d-Array-Initialisierung ziemlich ähnlich. In einem 2D-Array müssen wir die Anzahl der Zeilen und Spalten definieren und sie dann mit einigen Daten initialisieren. Siehe zum Beispiel den folgenden Code.

void setup() {
  int nRow = 2;
  int nCol = 4;
  int myArray[nRow][nCol] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
}

Im obigen Code ist nRow eine Variable vom Typ int, mit der die Anzahl der Zeilen im 2D-Array definiert wird. nCol ist eine Variable vom Typ int, mit der die Anzahl der Spalten im 2D-Array definiert wird, und myArray ist ein Array vom Typ int, in dem die angegebenen int-Werte gespeichert werden. Sie können alle diese Werte entsprechend den angegebenen Daten ändern. Beachten Sie, dass Sie in Arduino auch andere Datentyp-Arrays wie float definieren können. Beachten Sie außerdem, dass Sie während der array-Initialisierung die Anzahl der Zeilen und Spalten oder zumindest die Anzahl der Spalten definieren müssen.

Speichern von Daten in 2D Array in Arduino

Wenn Sie Daten in einem 2D-Array speichern möchten, müssen Sie zu diesem Zweck zwei Schleifen verwenden. Um Daten in einem 2D-Array zu speichern, müssen Sie zu jeder Position in einem 2D-Array gehen und dort Daten speichern. Ein 2D-Array enthält viele Elemente, sodass das manuelle Speichern von Daten an jeder Position zeitaufwändig ist. Um Zeit zu sparen, können Sie zwei Schleifen verwenden, um zu jeder Position zu gelangen und die angegebenen Daten an der bestimmten Position zu speichern. Siehe zum Beispiel den folgenden Code.

void setup() {
  int data = 0;
  int myArray[nRow][nCol];
  for (int nr = 0; nr < nRow; nr++) {
    for (int nc = 0; nc < nCol; nc++) {
      myArray[nr][nc] = data++;
    }
  }
}

Im obigen Code verwenden wir zwei Schleifen, um zu jeder Position in einem 2D-Array zu gelangen und die angegebenen Daten dort zu speichern. In diesem Beispiel sind die Daten eine Variable, deren Wert Null ist. Sie können den Wert jedoch entsprechend den angegebenen Daten ändern. Diese Methode speichert oder ersetzt Daten an jeder Position im 2D-Array.

Ersetzen Sie einen Wert in 2D Array an einer bestimmten Position in Arduino

Wenn Sie Daten nur an einer Position speichern oder ersetzen möchten, müssen Sie nur den Zuweisungsoperator für die bestimmte Position verwenden. Siehe zum Beispiel den folgenden Code.

void setup() {
  int nRow = 2;
  int nCol = 4;
  int myArray[nRow][nCol] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
  myArray[nRow][nCol] = 0;
}

Im obigen Code ersetzen wir den an der Position nRow und nCol im 2D-Array vorhandenen Wert durch 0.

Abrufen eines Werts von einer bestimmten Position in 2D Array in Arduino

Wenn Sie einen Wert von einer bestimmten Position im 2D-Array erhalten möchten, können Sie den Zuweisungsoperator verwenden. Siehe zum Beispiel den folgenden Code.

void setup() {
  int nRow = 2;
  int nCol = 4;
  int myArray[nRow][nCol] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
  int myValue = myArray[nRow][nCol];
}

Im obigen Code rufen wir einen Wert ab, der an der Position nRow und nCol im 2D-Array vorhanden ist, nämlich 8.

Arduino MatrixMath Bibliothek für 2D-Arrays

Sie können die in Arduino vorhandene Bibliothek MatrixMath für viele Operationen wie Addition, Subtraktion, Multiplikation, Inverse und Drucken von 2D-Arrays verwenden. Lesen Sie die Dokumentation der Bibliothek für weitere Informationen und überprüfen Sie ein Beispiel hier.

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Verwandter Artikel - Arduino Array