Làm hiệu ứng LED nhấp nháy rượt đuổi nhau đơn giản với 5 LED

Giới thiệu

Nhằm mang đến một ví dụ vui về các đèn LED, mình đã viết bài này. Hi vọng, các newbie cảm thấy thích thú với những gì Arduino làm được và cùng chúng tớ phát triển Arduino. Đây là một ví dụ cực kì dễ vì vậy đừng ngại gì mà không lắp thử, bạn nhé!

Nội dung cần nắm

Qua bài này, bạn sẽ làm quen hơn nữa với cách mà Arduino thực hiện một dự án. Bạn nên tham khảo các đường dẫn trong code nếu chưa hiểu về câu lệnh đó!

Phần cứng

Lắp mạch

Lập trình

//hàm setup() chỉ chạy duy nhất một lần khi khởi động arduino hoặc sau khi bạn nhấn nút reset
// http://arduino.vn/reference/setup-va-loop
void setup() {
  // khởi tạo các chân 2, 3, 4, 5, 6 là OUTPUT
  // nghĩa là ta sẽ sử dụng những chân này với nhiệm vụ xuất tín hiệu điện
  // bạn tham khảo tại trang http://arduino.vn/reference/pinmode
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
}
// sau khi chạy hàm setup(), arduino sẽ chạy hàm loop() liên tục lặp đi lặp lại không bao giờ nghỉ
// http://arduino.vn/reference/setup-va-loop
void loop() {
  
  //Nếu bạn chưa biết hàm digitalWrite có ý nghĩa gì, xin tham khảo tại http://arduino.vn/reference/digitalwrite  
  digitalWrite(2, HIGH); //bật đèn led nối với chân digital 2
  //Nếu bạn chưa biết hàm delay có ý nghĩa gì, xin tham khảo tại http://arduino.vn/reference/delay
  delay(60); // đợi 60 mili giây = 0.06 giây
  digitalWrite(2, LOW); //tắt đèn led nối với chân digital 2
  digitalWrite(3, HIGH); //bật...digital 3
  delay(60);// dừng 60 ms
  digitalWrite(3, LOW); // tắt ... digital 3
  digitalWrite(4, HIGH); //....
  delay(60);
  digitalWrite(4, LOW);
  digitalWrite(5, HIGH);
  delay(60);
  digitalWrite(5, LOW);
  digitalWrite(6, HIGH);
  delay(60);
  digitalWrite(6, LOW);
  // reverse
  digitalWrite(6, HIGH);
  delay(60);
  digitalWrite(6, LOW);
  digitalWrite(5, HIGH);
  delay(60);
  digitalWrite(5, LOW);
  digitalWrite(4, HIGH);
  delay(60);
  digitalWrite(4, LOW);
  digitalWrite(3, HIGH);
  delay(60);
  digitalWrite(3, LOW);
  digitalWrite(2, HIGH);
  delay(60);
  digitalWrite(2, LOW);
}

Video

Lời kết

Hãy chế thứ gì đó thật cool nào

lên
14 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Một dự án được truyền cảm hứng với "LED RGB chung cực dương"

Sau khi đọc xong bài viết "Làm thế nào để điều khiển được LED RGB", mình cũng muốn làm thử. Tuy nhiên khi đặt mua thì lại nhận được loại LED RGB có cực dương chung. Vậy làm sao áp dụng được?

 

lên
33 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Giao tiếp giữa hai mạch Arduino bất kỳ

Giao tiếp giữa mạch Arduino là rất quan trọng, vì có nhiều dự án phức tạp và việc lập trình trên 1 Arduino là điều không thể. Hôm nay, mình sẽ hướng dẫn bạn cách giao tiếp giữa 2 mạch Arduino bất kỳ bằng việc sử dụng thư viện Serial Command.

lên
22 thành viên đã đánh giá bài viết này hữu ích.