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

ROBOT HAI BÁNH TỰ CÂN BẰNG - 2 WHEEL SELF BALANCING ROBOT

Hôm nay mình xin chia sẻ với các bạn cách làm một robot tự cân bằng trên hai bánh xe bằng Arduino từ xe đồ chơi bị hỏng của thằng nhóc ở nhà. Tất nhiên, hai động cơ và hai bánh xe chưa bị hỏng nhé. laugh. Để robot tự cân bằng trên hai bánh xe thì chuyển động của nó tương tự như việc giữ thăng bằng một cây gậy trên ngón tay. Điều này chắc các bạn cũng đã từng thử trước đây.

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

Arduino Nano - Nhỏ, tiện lợi, mang trên mình tinh hoa của Arduino Uno

Điều đầu tiên tớ muốn chia sẻ với các bạn khi tiếp xúc với Arduino Nano, đó là sự tiện dụng, đơn giản, có thể lập trình trực tiếp bằng máy tính (như Arduino Uno R3) và đặc biệt hơn cả đó là kích thước của nó. Kích thước của Arduino Nano cực kì nhỏ chỉ tương đương đồng 2 nghìn gấp lại 2 lần thôi, rất thích hợp cho các newbie, vì giá rẻ hơn Arduino Uno nhưng dùng được tất cả các thư việt của mạch này. Hôm nay, tớ viết bài này nhằm mục đích giới thiệu về mạch Arduino Nano và các thông số kĩ thuật, cùng với đó là những gợi ý ứng dụng khi bắt đầu với mạch này.

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

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.