Un array es un conjunto de valores a los que se accede con un número índice. Cualquier
valor puede ser recogido haciendo uso del nombre de la matriz y el número del índice.
El primer valor de la matriz es el que está indicado con el índice 0, es decir el primer
valor del conjunto es el de la posición 0. Un array tiene que ser declarado y
opcional mente asignados valores a cada posición antes de ser utilizado
int miArray[] = {valor0, valor1, valor2...}
Del mismo modo es posible declarar una matriz indicando el tipo de datos y el tamaño
y posteriormente, asignar valores a una posición especifica:
int miArray[5]; // declara un array de enteros de 6 posiciones
miArray[3] = 10; // asigna 1 valor 10 a la posición 4
Para leer de un array basta con escribir el nombre y la posición a leer:
x = miArray[3]; // x ahora es igual a 10 que está en la posición 3
del array
Las matrices se utilizan a menudo para estamentos de tipo bucle, en los que la variable
de incremento del contador del bucle se utiliza como índice o puntero del array. El
siguiente ejemplo usa una matriz para el parpadeo de un LED.
Utilizando un bucle tipo for, el contador comienza en cero 0 y escribe el valor que figura en la posición de índice 0 en la serie que hemos escrito dentro del array parpadeo[], en este caso 180, que se envía a la salida analógica tipo PWM configurada en el PIN10, se hace una pausa de 200 ms y a continuación se pasa al siguiente valor que asigna el índice “i”.
Utilizando un bucle tipo for, el contador comienza en cero 0 y escribe el valor que figura en la posición de índice 0 en la serie que hemos escrito dentro del array parpadeo[], en este caso 180, que se envía a la salida analógica tipo PWM configurada en el PIN10, se hace una pausa de 200 ms y a continuación se pasa al siguiente valor que asigna el índice “i”.
int ledPin = 10; // Salida LED en el PIN 10
byte parpadeo[] = {180, 30, 255, 200, 10, 90, 150, 60}; // array de 8 valores diferentes
void setup()
}
pinMode(ledPin, OUTPUT); //Configuracion de salida pin 10
{
void loop() //bucle del programa
}
for (int i=0; i<8; i++) // Crea un bucle tipo "for" creando una variable "i" de 0 a 7
}
analogWrite(ledPin, parpadeo[i]); // escribe en la salida PIN 10 el valor al que apunta i dentro del array parpadeo []
delay(200); // espera 200ms
}
}
byte parpadeo[] = {180, 30, 255, 200, 10, 90, 150, 60}; // array de 8 valores diferentes
void setup()
}
pinMode(ledPin, OUTPUT); //Configuracion de salida pin 10
{
void loop() //bucle del programa
}
for (int i=0; i<8; i++) // Crea un bucle tipo "for" creando una variable "i" de 0 a 7
}
analogWrite(ledPin, parpadeo[i]); // escribe en la salida PIN 10 el valor al que apunta i dentro del array parpadeo []
delay(200); // espera 200ms
}
}
No hay comentarios:
Publicar un comentario