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

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Với 30 phút, tự làm demo thùng nước IoT bơm nước tự động cùng iNut Platform

Bạn muốn kết nối hàng chục thiết bị của mình lên Internet trong nháy mắt... mà không phải code lập trình mạng hay tốn tiền server? Xin giới thiệu với các bạn mô hình thùng nước IoT báo khi nào hết nước và gửi dữ liệu lên Internet. Chỉ với 30 phút là bạn đã có thể khám phá và làm lại được rồi.

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

Bài 11: Xác định trạng thái của một nút nhấn (button) - INPUT_PULLUP

Tại bài viết Bài 3: Xác định trạng thái của một nút nhấn (button), bạn đã biết được cách để đọc tín hiệu từ một button bằng cách thiết đặt chân digital là INPUT. Hôm nay, ta cũng đào xới vấn đề đọc trạng thái của một nút nhấn, nhưng đi theo một hướng khác (không dùng điện trở như trong Bài 3). Cách làm này đơn giản hơn và thực tế thường được ứng dụng.

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