Tiếp theo bài B13 kết hợp vòng lặp for() với mảng array. Mảng là một dạng của biến với nhiều thành phần. Có thể so sánh mảng như một khay đựng trứng.
Bằng cách sử dụng mảng để đựng giá trị của chân LED trong ví dụ này, từng chân LED có thể tác động riêng biệt thay vì theo thứ tự cố định như bài trước.

- Chương trình
/*
Arrays
This example code is in the public domain.
*/
int timer = 100; // khoảng giãn cách
int ledPins[] = { 2, 7, 4, 6, 5, 3}; // mảng chứa chân LED
int pinCount = 6; // số LED cũng là độ rộng của mảng
void setup() {
// thứ tự chân đánh số từ 0 đến (độ rộng của mảng - 1)
for (int thisPin = 0; thisPin < pinCount; thisPin++) {
pinMode(ledPins[thisPin], OUTPUT);
}
}
void loop() {
// từ chân thấp lên cao
for (int thisPin = 0; thisPin < pinCount; thisPin++) {
// bật trạng thái lên cao
digitalWrite(ledPins[thisPin], HIGH);
delay(timer);
// tắt LED bằng trạng thái thấp
digitalWrite(ledPins[thisPin], LOW);
}
// từ cao xuống thấp
for (int thisPin = pinCount - 1; thisPin >= 0; thisPin--) {
// bật
digitalWrite(ledPins[thisPin], HIGH);
delay(timer);
// tắt
digitalWrite(ledPins[thisPin], LOW);
}
}
