Arduino 2D Array
- Inizializzazione di array 2D in Arduino
-
Memorizzazione dei dati in un
Array
2D in Arduino -
Sostituisci un valore in 2D
Array
in una posizione specifica in Arduino -
Recupero di un valore da una posizione specifica in 2D
Array
in Arduino -
Libreria Arduino
MatrixMath
per array 2D
In questo tutorial, discuteremo array 2D in Arduino. Discuteremo come inizializzare un array 2D e usarlo per memorizzare i dati.
Inizializzazione di array 2D in Arduino
L’inizializzazione dell’array 2D è abbastanza simile all’inizializzazione dell’array 1d. In un array 2D, dobbiamo definire il numero di righe e colonne e quindi inizializzarlo con alcuni dati. Ad esempio, vedere il codice di seguito.
void setup() {
int nRow = 2;
int nCol = 4;
int myArray[nRow][nCol] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
}
Nel codice precedente, nRow
è una variabile di tipo int
che viene utilizzata per definire il numero di righe nell’array 2D. nCol
è una variabile di tipo int
che è usata per definire il numero di colonne nell’array 2D, e myArray
è un array di tipo int
, che è usato per memorizzare i valori int
dati. È possibile modificare tutti questi valori in base ai dati forniti. Nota che puoi anche definire altri tipi di dati array come float
in Arduino. Inoltre, nota che devi definire il numero di righe e colonne o almeno il numero di colonne durante l’inizializzazione array
.
Memorizzazione dei dati in un Array
2D in Arduino
Se si desidera memorizzare i dati in un array 2D, è necessario utilizzare due loop per questo scopo. Per memorizzare i dati in un array 2D, devi andare in ogni posizione in un array 2D e memorizzare i dati lì. Un array 2D ha molti elementi, quindi sarà molto dispendioso in termini di tempo memorizzare manualmente i dati in ogni posizione. Per risparmiare tempo, è possibile utilizzare due cicli per andare in ogni posizione e memorizzare i dati forniti nella posizione specifica. Ad esempio, vedere il codice di seguito.
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++;
}
}
}
Nel codice sopra, stiamo usando due loop per andare in ogni posizione in un array 2D e memorizzare lì i dati forniti. In questo esempio, i dati sono una variabile il cui valore è zero, ma è possibile modificarne il valore in base ai dati forniti. Questo metodo memorizzerà o sostituirà i dati in ogni posizione nell’array 2D.
Sostituisci un valore in 2D Array
in una posizione specifica in Arduino
Se si desidera memorizzare o sostituire i dati in una sola posizione, è sufficiente utilizzare l’operatore di assegnazione per la posizione specifica. Ad esempio, vedere il codice di seguito.
void setup() {
int nRow = 2;
int nCol = 4;
int myArray[nRow][nCol] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
myArray[nRow][nCol] = 0;
}
Nel codice sopra, stiamo sostituendo il valore presente nella posizione nRow
e nCol
nella matrice 2D a 0
.
Recupero di un valore da una posizione specifica in 2D Array
in Arduino
Se si desidera ottenere un valore da una posizione specifica in un array 2D, è possibile utilizzare l’operatore di assegnazione. Ad esempio, vedere il codice di seguito.
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];
}
Nel codice sopra, stiamo recuperando un valore presente nella posizione nRow
e nCol
nell’array 2D, che è 8
.
Libreria Arduino MatrixMath
per array 2D
È possibile utilizzare la libreria MatrixMath
presente in Arduino per molte operazioni come addizione, sottrazione, moltiplicazione, inversione e stampa di array 2D. Leggi la documentazione della libreria per maggiori informazioni e controlla un esempio qui.