Làm đèn nhấp nháy trên xe cảnh sát

Nội dung chính, cần nắm

Đây là một ví dụ về sự sáng tạo cực kỳ đơn giản với Arduino và LED. Qua bài viết này, tôi muốn chia sẻ cho các bạn rằng, chúng ta chỉ cần biết một ít kiến thức về Arduino là có thể làm được những ứng dụng độc đáo ngay. Cụ thể, là bạn chỉ cần đọc qua bài Bài 2: Cách làm đèn LED nhấp nháy theo yêu cầu là có thể làm được ví dụ trong bài viết này rồi. Khá là hay đấy nhé!

Hôm nay chúng ta sẽ làm được gì

Phần cứng

Lắp mạch

Lập trình

int ledDelay = 50; // delay trong 50 mili giây (ms)
int redPin = 5;
int bluePin = 6;


void setup() {
    pinMode(redPin, OUTPUT); //pinMode đèn đỏ là OUTPUT
    pinMode(bluePin, OUTPUT); //pinMode đèn xanh là OUTPUT

}

void loop() {

    digitalWrite(redPin, HIGH); // bật đèn đỏ
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(redPin, LOW); // tắt đèn đỏ
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(redPin, HIGH); // bật đèn đỏ
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(redPin, LOW); // tắt đèn đỏ
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(redPin, HIGH); // bật đèn đỏ
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(redPin, LOW); // tắt đèn đỏ
    delay(ledDelay); // đợi 50ms
    
    delay(100); // delay midpoint by 100ms
    
    digitalWrite(bluePin, HIGH); // bật đèn xanh
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(bluePin, LOW); // tắt đèn xanh
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(bluePin, HIGH); // bật đèn xanh
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(bluePin, LOW); // tắt đèn xanh
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(bluePin, HIGH); // bật đèn xanh
    delay(ledDelay); // đợi 50ms
    
    digitalWrite(bluePin, LOW); // tắt đèn xanh
    delay(ledDelay); // đợi 50ms


}

Lời kết

Một ứng dụng hay không quá phức tạp như bạn nghĩ đâu, bạn có thể dùng ATTiny13 để lập trình cho nó nhỏ hơn, phù hợp với các dự án làm sa bàn! Ngoài ra, bạn có thể tham khảo bài viết Cách xuất file .HEX từ Arduino IDE và mô phỏng Arduino trên phần mềm Proteus để thử mô phỏng trên Proteus nếu không có điều kiện sở hữu một bé Arduino. Mình xin chia sẻ file Proteus và file hex của nó tại đây.

Chúc các bạn thành công!

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

Bộ điều khiển PID - ứng dụng phần 2 - xe dò line dùng thuật toán PID

Tiép nối bài viết về xe dò line cảm ơn Đỗ Hữu Toàn đã viết hộ mình phần 4. hôm nay mình sẽ làm cho chiếc xe dò line đi mượt và có hồn hơn 

lên
34 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ả

Tiết kiệm RAM trong Arduino?

Như đã nói ở bài trước Cách lưu trữ các biến số, mảng, chuỗi trong Arduino, chúng ta đã biết rằng các loại biến trong Arduino được lưu ở những vùng nhớ khác nhau trong RAM, và khi hết RAM thì chương trình của bạn sẽ die một cách bất ngờ - vì lỗi không nằm trong code.

Vì vậy, hôm nay, chúng ta sẽ tìm cách giải quyết vấn đề "làm thế nào để giảm thiểu việc sử dụng RAM trong một sketch Arduino?".

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

Giấy phép nguồn mở, giấy phép tài liệu mở - Quyền lợi, nghĩa vụ của bạn trong thế giới nguồn mở

Trong thời đại số này, việc tiếp cận và sử dụng những tri thức đã không còn khó khăn, bạn chỉ cần một trình duyệt và một máy tính cùng với đường truyền mạng mà đã có thể truy cập vào nguồn tri thức rộng lớn trên thế giới. Nhưng, có bao giờ bạn tự nghĩ, ngoài quyền lợi cực lớn là được tiếp xúc với tri thức mở và được tác giả hỗ trợ khi gặp lỗi, bạn có trách nhiệm và nghĩa vụ gì? Và khi là bạn là tác giả, bạn sẽ được những quyền gì và với việc ý thức được quyền của mình, bạn sẽ cảm thấy tự tin hơn trong thế giới nguồn mở. Bạn sẽ hiểu được: không phải thứ gì mình có source thì nó đều là "nguồn mở", không phải thứ gì cho mình dùng miễn phí đều là nguồn mở,... Ý thực được điều này, giúp bạn đi nhanh và xa trong thế giới nguồn mở thế giới!

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