B14 – Sử dụng mảng (Array)

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);
  }
}

Leave a Reply

Your email address will not be published. Required fields are marked *