analogWrite()

Bạn cần tìm hiểu về xung PWM trước khi đọc bài viết này !

Giới thiệu

analogWrite() là lệnh xuất ra từ một chân trên mạch Arduino một mức tín hiệu analog (phát xung PWM). Người ta thường điều khiển mức sáng tối của đèn LED hay hướng quay của động cơ servo bằng cách phát xung PWM như thế này.

Bạn không cần gọi hàm pinMode() để đặt chế độ OUTPUT cho chân sẽ dùng để phát xung PWM trên mạch Arduino.

Cú pháp

analogWrite([chân phát xung PWM], [giá trị xung PWM]);

Giá trị mức xung PWM nằm trong khoảng từ 0 đến 255, tương ứng với mức duty cycle từ 0% đến 100%

Ví dụ

int led = 11;

void setup() {
}

void loop() {
    for (int i = 0; i <= 255; i++) {
        analogWrite(led,i);
        delay(20);
    }
}

Đoạn code trên có chức năng làm sáng dần một đèn LED được kết nối vào chân số 11 trên mạch Arduino.

Reference Tags: 
lên
31 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ả

volatile

Nếu bạn cần tìm hiểu về biến volatile, hãy tham khảo ở bài viết tại Wikipedia

Sơ lược

Một biến được nên khai báo với từ khóa volatile nếu giá trị của nó có thể bị tác động bởi các yếu tố nằm ngoài sự kiểm soát của chương trình đang chạy, nói đơn giản hơn là giá trị của biến thay đổi một cách không xác định. Các biến kiểu volatile thường là:

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

Học Arduino qua dự án làm xe điều khiển từ xa - Phần 2: Bật tắt đèn

Trong phần 2 của loạt bài "Học Arduino qua dự án làm xe điều khiển từ xa", mình sẽ hướng dẫn các bạn:

  • Cách làm một module đèn LED đơn giản
  • Cách điều khiển nhiều đèn LED sử dụng transistor.
  • Cách lập trình bật/tắt đèn LED. 

Mình sẽ hướng dẫn các bạn làm trên breadboard, phần hàn mạch các bạn tự làm vì nó không có gì phức tạp cả. 

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