Arduino 2D Array
- Inicialização de array 2D em Arduino
-
Armazenando dados em 2D
Array
em Arduino -
Substitua um valor em 2D
Array
em uma posição específica no Arduino -
Recuperando um valor de uma posição específica em 2D
Array
no Arduino -
Biblioteca Arduino
MatrixMath
para matrizes 2D
Neste tutorial, discutiremos 2D array no Arduino. Discutiremos como podemos inicializar um array 2D e usá-lo para armazenar dados.
Inicialização de array 2D em Arduino
A inicialização do array 2D é bastante semelhante à inicialização do array 1d. Em um array 2D, temos que definir o número de linhas e colunas e então inicializá-lo com alguns dados. Por exemplo, veja o código abaixo.
void setup() {
int nRow = 2;
int nCol = 4;
int myArray[nRow][nCol] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
}
No código acima, nRow
é uma variável do tipo int
que é usada para definir o número de linhas na matriz 2D. nCol
é uma variável do tipo int
que é usada para definir o número de colunas no array 2D, e myArray
é um array do tipo int
, que é usado para armazenar os valores int
fornecidos. Você pode alterar todos esses valores de acordo com os dados fornecidos. Observe que você também pode definir outros arrays de tipo de dados como float
no Arduino. Além disso, observe que você deve definir o número de linhas e colunas ou pelo menos o número de colunas durante a inicialização do array
.
Armazenando dados em 2D Array
em Arduino
Se você deseja armazenar dados em um array 2D, você deve usar dois loops para essa finalidade. Para armazenar dados em um array 2D, você tem que ir a todas as posições em um array 2D e armazenar os dados lá. um array 2D tem muitos elementos, portanto, será demorado armazenar dados em cada posição manualmente. Para economizar tempo, você pode usar dois loops para ir para cada posição e armazenar os dados fornecidos na posição específica. Por exemplo, veja o código abaixo.
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++;
}
}
}
No código acima, estamos usando dois loops para ir para todas as posições em um array 2D e armazenar os dados fornecidos lá. Neste exemplo, os dados são uma variável cujo valor é zero, mas você pode alterar seu valor de acordo com os dados fornecidos. Este método irá armazenar ou substituir dados em todas as posições do array 2D.
Substitua um valor em 2D Array
em uma posição específica no Arduino
Se você deseja armazenar ou substituir dados em apenas uma posição, você só precisa usar o operador de atribuição para a posição específica. Por exemplo, veja o código abaixo.
void setup() {
int nRow = 2;
int nCol = 4;
int myArray[nRow][nCol] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
myArray[nRow][nCol] = 0;
}
No código acima, estamos substituindo o valor presente na posição nRow
e nCol
na matriz 2D para 0
.
Recuperando um valor de uma posição específica em 2D Array
no Arduino
Se você deseja obter um valor de uma posição específica na matriz 2D, você pode usar o operador de atribuição. Por exemplo, veja o código abaixo.
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];
}
No código acima, estamos recuperando um valor presente na posição nRow
e nCol
na matriz 2D, que é 8
.
Biblioteca Arduino MatrixMath
para matrizes 2D
Você pode usar a biblioteca MatrixMath
presente no Arduino para muitas operações como adição, subtração, multiplicação, inversão e impressão de arrayes 2D. Leia a documentação da biblioteca para mais informações e veja um exemplo aqui.