Vòng lặp for cho arduino

13/03/2021
vong-lap-for-cho-arduino

VAI TRÒ CỦA CÁC HÀM VÒNG LẶP TRONG LẬP TRÌNH ARDUINO

1. Vấn đề thực tế

Chẳng hạn, chúng ta cần bật tắt một con LED thì dùng digitalWrite xuất HIGH delay rồi lại LOW rồi lại delay. Nhưng nếu chúng ta muốn làm nhiều hơn 1 con LED thì mọi đoạn code của chúng ta sẽ dài ra.

Ví dụ:

Với 1 con led, bạn lập trình như thế này

digitalWrite(led1,HIGH);

delay(1000);

digitalWrite(led1,LOW);

delay(1000);

Với 10 con led, nếu chúng ta không dùng for, đoạn code nó sẽ dài như thế này

digitalWrite(led1,HIGH);

delay(1000);

digitalWrite(led1,LOW);

delay(1000);

digitalWrite(led2,HIGH);

delay(1000);

digitalWrite(led2,LOW);

delay(1000);

...

digitalWrite(led10,HIGH);

delay(1000);

digitalWrite(led10,LOW);

delay(1000);

 

2. Cải tiến vấn đề thực tế

Bây giờ hãy lấy một ví dụ đơn giản như sau:

Bạn muốn xuất 10 chữ số (từ 1 - 10) ra Serial. Hãy giúp tôi lập trình trên Arduino để làm được việc ấy! Bạn sẽ lập trình như sau:

void setup() {

Serial.begin(9600);

Serial.println(1);

Serial.println(2);

Serial.println(3);

Serial.println(4);

Serial.println(5);

Serial.println(6);

Serial.println(7);

Serial.println(8);

Serial.println(9);

Serial.println(10);

}

void loop() {

// không làm gì cả;}

à Đoạn code khá dài và lặp đi lặp lại câu lệnh Serial.println

Cú pháp hàm for: for (<kiểu dữ liệu nguyên> <tên biến chạy> = <vị trí xuất phát>; <tên biến chạy> <= <vị trí kết thúc>; <tên biến chạy> += <mỗi lần bước mấy bước>) {

<đoạn câu lệnh>;

}

Nhưng sau khi biết về hàm for bạn chỉ cần một đoạn code cực kì ngắn như sau:

void setup(){

Serial.begin(9600);

for (int i = 1;i<=10;i=i+1) {

Serial.println(i);

}

}

void loop(){

}

(Sưu tầm

Bình luận
Nội dung này chưa có bình luận, hãy gửi bình luận đầu tiên của bạn.
VIẾT BÌNH LUẬN CỦA BẠN