2d tablica - Arduino

2d tablica - Arduino

Tablice Arduino można zaprogramować za pomocą języka C/C ++. Większość koncepcji programowania Arduino dziedziczy po tych dwóch językach. Podobnie jak w tablicach C/C ++ są również używane w szkicach Arduino. Tablice mogą przechowywać wiele elementów z tym samym typem danych. Tablice w Arduino są powszechnie stosowane z pętlami do sterowania poziomem napięcia przy wielu szpilkach. Zobaczmy, jak utworzyć tablice 2D w Arduino.

Tablice 2d w Arduino

2D lub dwuwymiarowe tablice są podobne do jednej wymiarowej różnicy, mamy tutaj wiele wierszy i wielu kolumn zamiast jednej linii znaków. Wszystkie elementy tablic są ułożone wewnątrz siatki w formie tabelarycznej z rzędami i kolumnami.

Krótko mówiąc, tablice, które wymagają dwóch różnych indeksu dolnej, aby wywołać określony element w określonym miejscu, nazywane są tablicami 2D. Każda tablica o dwóch lub więcej wymiarach jest znana jako tablica wielowymiarowa.

Tutaj, na powyższym obrazie, możemy zobaczyć wielowymiarową tablicę 2D, ponieważ wymaga ona dwóch dolnych indeksu do identyfikacji określonego elementu.

  • Pierwsza to nazwa tablicy oznaczonej przez "A".
  • Drugi to indeks dolny wierszy [2] Mówienie nam lokalizacji elementu w odniesieniu do jego numeru wiersza.
  • Trzeci to indeks indeksowy kolumny [1] oznacza numer kolumny określonych elementów.

Inicjowanie tablicy 2D w Arduino

Teraz, aby zrozumieć koncepcję tablicy 2D, zainicjujemy tablicę 2D w kodzie Arduino i wydrukuje ją na monitorze szeregowym. Poniżej znajduje się kod inicjalizacji tablicy 2d 2d:

void setup ()
Seryjny.rozpocząć (115200); /*Rozpoczyna się komunikacja szeregowa*/
int nrow = 2; /*Liczba rzędów*/
int ncol = 3; /*Liczba kolumny*/
int twodimarray [2] [3] = /*tablica zdefiniowana z wymiarem* /

1, 2, 3, /*elementy tablicy* /
4, 5, 6
;
Seryjny.println („Tablica dwuwymiarowa [2] x [3]”);
int currow = 0;
When (Currow < nRow) /*While loop to print n value of row*/

int curcol = 0;
podczas gdy Curcol < nCol) /*While loop to print n value of column*/

Seryjny.print (twodimarray [currow] [curcol]);
Seryjny.druk („”);
curcol ++; /*Wydrukuj wszystkie elementy wierszy*/

Seryjny.println ();
currow ++; /*Wydrukuj wszystkie elementy kolumny*/


Void Loop ()

Tutaj, w powyższym kodzie, zaczęliśmy od inicjowania komunikacji szeregowej w celu wydrukowania wyników na monitorze szeregowym. Kolejna całkowita liczba wierszy i kolumn jest inicjowana. Aby przechowywać dane wewnątrz tablicy zainicjowaliśmy dwuwymiarowy ciąg tablicy, który drukuje liczby od 1 do 6.

Obok przechowywania zainicjowanych danych w tablicy dwóch, podczas gdy pętle będą wymagane dla liczby wierszy i drugie dla całkowitej liczby kolumn. Możemy również to zrobić ręcznie, ale w przypadku dużych tablic 2D musimy napisać osobną linię dla każdego elementu tablicy 2D. Aby uniknąć tej pętli, jest inicjowane, które będą działać i zwiększyć ich wartość do przechowywania następnego elementu wewnątrz tablicy.

Na koniec wydrukowaliśmy zarówno wiersze, jak i kolumny za pomocą serialu.Funkcja print ().

Wyjście

Wyjście wyświetla tablicę 2D o rozmiarze 2 × 3.

Zastąpienie elementów tablicy 2D wartością w Arduino

Jak pomyślnie wydrukowaliśmy tablicę 2D na monitorze szeregowym, teraz zastąpimy określoną wartość elementem wewnątrz tablicy 2D.

void setup ()
Seryjny.rozpocząć (115200); /*Rozpoczyna się komunikacja szeregowa*/
int nrow = 2; /*Liczba rzędów*/
int ncol = 3; /*Liczba kolumny*/
int twodimarray [2] [3] = /*tablica zdefiniowana z wymiarem* /

1, 2, 3, /*elementy tablicy* /
4, 5, 6
;
Seryjny.println („element w miejscu [1] x [1] jest zastąpiony 0:”);
int currow = 0;
When (Currow < nRow)

int curcol = 0;
podczas gdy Curcol < nCol)

Twodimarray [1] [1] = 0; /*Element tablicy w [1] x [1] jest zastępowany 0*/
Seryjny.print (twodimarray [currow] [curcol]);
Seryjny.druk („”);
curcol ++; /*Wydrukuj wszystkie elementy wierszy*/

Seryjny.println ();
currow ++; /*Wydrukuj wszystkie elementy kolumny*/


Void Loop ()




Powyższy kod jest podobny w pracy, jak wyjaśniony wcześniej kod. Jedyną różnicą jest dodanie dwóch linii za pomocą następującej funkcji: możemy zastąpić dowolny element tablicy danej wartości.
[cce_bash szerokość = "100%" height = "100%" uciekł = "true" motyw = "blackboard" nowrap = "0"]
Twodimarray [1] [1] = 0;

Tutaj element [1] x [1], który jest równy 5, zostanie zastąpiony liczbą 0. Określając lokalizację elementu tablicy dowolna liczba może zostać zastąpiona nową.

Wyjście

W monitorze szeregowym możemy zobaczyć, że element w miejscu [1] x [1] został zastąpiony numerem 0:

Uzyskanie wartości z określonej pozycji w tablicy 2D w Arduino

Teraz odzyskamy określoną wartość elementu z dowolnej pozycji wewnątrz tablicy 2D:

void setup ()
Seryjny.rozpocząć (115200); /*Rozpoczyna się komunikacja szeregowa*/
int nrow = 2; /*Liczba rzędów*/
int ncol = 3; /*Liczba kolumny*/
int twodimarray [2] [3] = /*tablica zdefiniowana z wymiarem* /

1, 2, 3, /*elementy tablicy* /
4, 5, 6
;
int currow = 0;
When (Currow < nRow)

int curcol = 0;
podczas gdy Curcol < nCol)

Seryjny.print (twodimarray [currow] [curcol]);
Seryjny.druk („”);
curcol ++; /*Wydrukuj wszystkie elementy wierszy*/

Seryjny.println ();
currow ++; /*Wydrukuj wszystkie elementy kolumny*/

int myValue = twodimarray [1] [1]; /*Element wydruku AL [1] x [1]*/
Seryjny.print („Wartość elementu w [1] x [1] to:”);
Seryjny.druk (myValue);

void Loop ()

Tutaj na końcu kodu zdefiniowaliśmy nową zmienną MyValue typu int. Ta zmienna przyjmuje wartość zdefiniowanego elementu za pomocą jego lokalizacji i wydrukuje go na monitorze szeregowym.

Tutaj zainicjowaliśmy go do drukowania elementów w miejscu [1] x [1].

Wyjście

Terminal wyjściowy reprezentuje wartość w miejscu [1] x [1], która jest równa 5:

Wniosek

Tablice dwuwymiarowe (tablica 2D) usuń kłopot z obsługą różnych zmiennych. Korzystając również z tablic 2D, możemy ustawić różne wartości pinów wysokie lub niskie. W tym artykule wprowadzono tablice 2D w Arduino i przewodniki o tym, jak zdobyć lub wymienić określone wartości elementu w tablicy 2D.