2D -Array - Arduino

2D -Array - Arduino

Arduino -Boards können mit einer C/C ++ - Sprache programmiert werden. Die meisten Konzepte Arduino -Programmierung erbt aus diesen beiden Sprachen. Wie in C/C ++ - Arrays werden auch in Arduino -Skizzen verwendet. Arrays können mehrere Elemente mit demselben Datentyp speichern. Arrays in Arduino werden üblicherweise mit Schleifen verwendet, um den Spannungsniveau an mehreren Stiften zu steuern. Mal sehen, wie Sie 2D -Arrays in Arduino erstellen.

2D -Arrays in Arduino

2D- oder zweidimensionale Arrays sind ähnlich wie ein dimensionaler Unterschied sind hier. Wir haben mehrere Zeilen und mehrere Spalten anstelle einer einzelnen Zeichenzeile. Alle Elemente von Arrays sind in einem Raster in der tabellarischen Form mit Zeilen und Spalten angeordnet.

In einfachen Worten werden Arrays, bei denen zwei verschiedene Indexs erforderlich sind, um ein bestimmtes Element an einem bestimmten Ort aufzurufen, als 2D -Arrays bezeichnet. Jedes Array mit zwei oder mehr Dimensionen wird als mehrdimensionales Array bezeichnet.

Hier im obigen Bild können wir ein mehrdimensionales 2D-Array sehen.

  • Erstens ist der Name von Array, die von gekennzeichnet sind "A".
  • Zweitens ist das Zeilen -Index [2] Sagen Sie uns Element -Standort in Bezug auf seine Zeilennummer.
  • Der dritte ist das Spaltenabschluss [1] bezeichnet die Spaltennummer spezifischer Elemente.

Initialisierung von 2D -Array in Arduino

Um das 2D -Array -Konzept zu verstehen, initialisieren wir ein 2D -Array im Arduino -Code und drucken Sie es auf einem seriellen Monitor. Im Folgenden finden Sie den Code zur Initialisierung eines 2 × 3 2D -Arrays:

void setup ()
Serie.Beginnen Sie (115200); /*Serielle Kommunikation beginnt*/
int nrow = 2; /*Anzahl der Reihen*/
int ncol = 3; /*Anzahl der Spalte*//
int twodimarray [2] [3] = /*Array definiert mit Dimension* /

1, 2, 3, /*Array -Elemente* / /
4, 5, 6
;
Serie.println ("zwei Dimensionsarray von [2] x [3]");
int currow = 0;
while (currow < nRow) /*While loop to print n value of row*/

int curcol = 0;
während (Curcol < nCol) /*While loop to print n value of column*/

Serie.print (twodimarray [currow] [curcol]);
Serie.drucken(" ");
Curcol ++; /*Drucken Sie alle Zeilenelemente*/

Serie.println ();
Currow ++; /*Alle Spaltenelemente ausdrucken*//


Hohlraumschleife ()

Hier im obigen Cod. Die nächste Gesamtzahl der Zeilen und Spalten werden initialisiert. Um Daten im Array zu speichern.

Speichern Sie neben dem initialisierten Daten innerhalb von Array zwei, während Schleifen für die Anzahl der Zeilen und für die Gesamtzahl der Spalten eine Schleife benötigen. Wir können dies auch manuell tun. Um diese Schleife zu vermeiden, wird initialisiert, die für sich selbst ausgeführt wird und ihren Wert erhöht, um das nächste Element im Array zu speichern.

Zuletzt druckten wir sowohl die Zeilen als auch die Spalten mit der Serie aus.print () Funktion.

Ausgang

Ausgang zeigt ein 2D -Array mit 2 × 3 -Größe an.

Ersetzen von 2D -Array -Elementen durch einen Wert in Arduino

Da wir ein 2D -Array auf dem Seriennachmonitor erfolgreich gedruckt haben, werden wir einen bestimmten Wert durch ein Element im 2D -Array ersetzen.

void setup ()
Serie.Beginnen Sie (115200); /*Serielle Kommunikation beginnt*/
int nrow = 2; /*Anzahl der Reihen*/
int ncol = 3; /*Anzahl der Spalte*//
int twodimarray [2] [3] = /*Array definiert mit Dimension* /

1, 2, 3, /*Array -Elemente* / /
4, 5, 6
;
Serie.println ("Element am Ort [1] x [1] wird durch 0 ersetzt:");
int currow = 0;
while (currow < nRow)

int curcol = 0;
während (Curcol < nCol)

twodimarray [1] [1] = 0; /*Array -Element bei [1] x [1] wird durch 0*/ersetzt
Serie.print (twodimarray [currow] [curcol]);
Serie.drucken(" ");
Curcol ++; /*Drucken Sie alle Zeilenelemente*/

Serie.println ();
Currow ++; /*Alle Spaltenelemente ausdrucken*//


Hohlraumschleife ()




Der obige Code ist ähnlich wie der zuvor erläuterte Code wie der Code. Der einzige Unterschied ist hier die Zugabe von zwei Zeilen unter Verwendung der folgenden Funktion: Wir können jedes Array -Element durch einen bestimmten Wert ersetzen.
[cce_bash width = "100%" height = "100%" entkommen = "True" thema = "Blackboard" nowrap = "0"]
twodimarray [1] [1] = 0;

Hier wird das [1] x [1] Element, das 5 entspricht, durch eine Zahl 0 ersetzt. Durch Definieren des Array -Element -Ortes kann eine beliebige Zahl durch eine neue ersetzt werden.

Ausgang

Im seriellen Monitor können wir dieses Element an der Stelle [1] x [1] durch die Nummer 0 ersetzt:

Erhalten Sie einen Wert aus einer bestimmten Position im 2D -Array in Arduino

Jetzt werden wir einen bestimmten Wert eines Elements von jeder Position innerhalb des 2D -Arrays abrufen:

void setup ()
Serie.Beginnen Sie (115200); /*Serielle Kommunikation beginnt*/
int nrow = 2; /*Anzahl der Reihen*/
int ncol = 3; /*Anzahl der Spalte*//
int twodimarray [2] [3] = /*Array definiert mit Dimension* /

1, 2, 3, /*Array -Elemente* / /
4, 5, 6
;
int currow = 0;
while (currow < nRow)

int curcol = 0;
während (Curcol < nCol)

Serie.print (twodimarray [currow] [curcol]);
Serie.drucken(" ");
Curcol ++; /*Drucken Sie alle Zeilenelemente*/

Serie.println ();
Currow ++; /*Alle Spaltenelemente ausdrucken*//

int myValue = twodimarray [1] [1]; /*Drucken Element al [1] x [1]*/
Serie.print ("Wert des Elements bei [1] x [1] ist:");
Serie.drucken (myValue);

void Loop ()

Hier am Ende des Code haben wir eine neue Variable definiert MyValue von int type. Diese Variable nimmt den Wert des definierten Elements anhand seines Standorts an und druckt es auf dem seriellen Monitor aus.

Hier haben wir es initialisiert, um Elemente am Ort zu drucken [1] x [1].

Ausgang

Der Ausgangsanschluss repräsentiert den Wert an Ort [1] x [1], der 5 entspricht:

Abschluss

Zweidimensionale Arrays (2D-Array) Entfernen Sie den Ärger der Umgang mit verschiedenen Variablen. Mit 2D -Arrays können wir verschiedene Pin -Werte hoch oder niedrig festlegen. Dieser Artikel gibt eine Einführung von 2D -Arrays in Arduino und führt dazu, wie bestimmte Elementwerte im 2D -Array erhalten oder ersetzt werden können oder ersetzen.