mirror of
https://github.com/arduino/Arduino.git
synced 2024-12-01 12:24:14 +01:00
a6022df422
removed redundant thisPin declaration in setup
57 lines
1.5 KiB
C++
57 lines
1.5 KiB
C++
/*
|
|
Arrays
|
|
|
|
Demonstrates the use of an array to hold pin numbers
|
|
in order to iterate over the pins in a sequence.
|
|
Lights multiple LEDs in sequence, then in reverse.
|
|
|
|
Unlike the For Loop tutorial, where the pins have to be
|
|
contiguous, here the pins can be in any random order.
|
|
|
|
The circuit:
|
|
* LEDs from pins 2 through 7 to ground
|
|
|
|
created 2006
|
|
by David A. Mellis
|
|
modified 30 Aug 2011
|
|
by Tom Igoe
|
|
|
|
This example code is in the public domain.
|
|
|
|
http://www.arduino.cc/en/Tutorial/Array
|
|
*/
|
|
|
|
int timer = 100; // The higher the number, the slower the timing.
|
|
int ledPins[] = {
|
|
2, 7, 4, 6, 5, 3 }; // an array of pin numbers to which LEDs are attached
|
|
int pinCount = 6; // the number of pins (i.e. the length of the array)
|
|
|
|
void setup() {
|
|
// the array elements are numbered from 0 to (pinCount - 1).
|
|
// use a for loop to initialize each pin as an output:
|
|
for (int thisPin = 0; thisPin < pinCount; thisPin++) {
|
|
pinMode(ledPins[thisPin], OUTPUT);
|
|
}
|
|
}
|
|
|
|
void loop() {
|
|
// loop from the lowest pin to the highest:
|
|
for (int thisPin = 0; thisPin < pinCount; thisPin++) {
|
|
// turn the pin on:
|
|
digitalWrite(ledPins[thisPin], HIGH);
|
|
delay(timer);
|
|
// turn the pin off:
|
|
digitalWrite(ledPins[thisPin], LOW);
|
|
|
|
}
|
|
|
|
// loop from the highest pin to the lowest:
|
|
for (int thisPin = pinCount - 1; thisPin >= 0; thisPin--) {
|
|
// turn the pin on:
|
|
digitalWrite(ledPins[thisPin], HIGH);
|
|
delay(timer);
|
|
// turn the pin off:
|
|
digitalWrite(ledPins[thisPin], LOW);
|
|
}
|
|
}
|