Ciclo For
Algunas veces se requiere iterar una serie de pines y hacer algo con cada uno. Por ejemplo, en este ejemplo parpadean 6 LEDs conectados al Arduino, usando un ciclo for() para el ciclo de ida y vuelta a través de los pines digitales 2 a 7. Los LEDs prenden y apagan en secuencia, usando las funciones digitalWrite() y delay().
¿Qué se necesita?
Arduino
6 Resistencias de 220 ohms
6 LEDs
Cables de interconexión
Protoboard
Conectar los seis LEDs cada uno con una resistencia de 220 en serie, a los pines 2 a 7 del Arduino. Aquí se encuentra el esquema.
El código empieza utilizando un ciclo for para asignar los pines digitales 2 a 7 como salidas para los 6 LEDs utilizados.
En el ciclo principal del código, se utilizan dos ciclos for para recorrer de forma incremental, paso a paso a través de los LEDs, uno por uno, del pin 2 al pin 7. Cuando el pin 7 está encendido, el proceso se invierte, haciendo que los LEDs se prendan al contrario de como ya se había hecho.
int timer = 100; // The higher the number, the slower the timing. void setup() { // use a for loop to initialize each pin as an output: for (int thisPin = 2; thisPin < 8; thisPin++) { pinMode(thisPin, OUTPUT); } } void loop() { // loop from the lowest pin to the highest: for (int thisPin = 2; thisPin < 8; thisPin++) { // turn the pin on: digitalWrite(thisPin, HIGH); delay(timer); // turn the pin off: digitalWrite(thisPin, LOW); } // loop from the highest pin to the lowest: for (int thisPin = 7; thisPin >= 2; thisPin--) { // turn the pin on: digitalWrite(thisPin, HIGH); delay(timer); // turn the pin off: digitalWrite(thisPin, LOW); } }
Referencias:
Arduino