Bài 05: Thay đổi độ sáng của đèn, hay làm mờ nó, có khó không?

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

Hôm nay chúng sẽ tìm hiểu cách sử dụng các chân digital để xuất giá trị analog và ứng dụng chúng trong việc làm thay đổi độ sáng của đèn (làm mờ đèn) nhé!

Bạn cần xem các bài viết về xung PWManalogWrite() để mau chóng hiểu rõ những đoạn code trong bài học này. Đừng ngại, hãy kiên trì nhé!

Phần cứng

Lắp mạch

Lưu ý những chân digital có dấu ~ phía trước và những chân analog mới hỗ trợ analogWrite, bạn nhé!

int led = 6;           // cổng digital mà LED được nối vào
int brightness = 0;    // mặc định độ sáng của đèn là 
int fadeAmount = 5;    // mỗi lần thay đổi độ sáng thì thay đổi với giá trị là bao nhiêu


void setup()  {
  // pinMode đèn led là OUTPUT
  pinMode(led, OUTPUT);
}

void loop()  {
  //xuất giá trị độ sáng đèn LED
  analogWrite(led, brightness);    

  // thay đổi giá trị là đèn LED
  brightness = brightness + fadeAmount;

  // Đoạn code này có nghĩa nếu độ sáng == 0 hoặc bằng == 255 thì sẽ đổi chiều của biến thay đổi độ sáng. Ví dụ, nếu đèn từ sáng yếu --> sáng mạnh thì fadeAmount dương. Còn nếu đèn sáng mạnh --> sáng yếu thì fadeAmmount lúc này sẽ có giá trị âm
  if (brightness == 0 || brightness == 255) {
    fadeAmount = -fadeAmount ;
  }    
  //đợi 30 mili giây để thấy sự thay đổi của đèn
  delay(30);                            
}
lên
61 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

Select any filter and click on Apply to see results

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

Tự học Arduino chưa bao giờ đơn giản như thế

Bạn đã từng băng khoăng về việc tự học Arduino? Không biết phải bắt đầu từ phần nào? Không biết phải mua gì? Không có phải lập trình như thế nào? Đừng lo lắng, chúng ta đã có thể tự học Arduino ngay từ bây giờ.

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

Vấn đề năng lượng cho board Intel Edison với Mini breakout

Yay, sau khi đọc bài viết giới thiệu về Intel Edison, mình cảm thấy rất phấn khích. Nhóm của mình cũng đang chuẩn bị làm một dự án với Intel Edison trong đó có vấn đề về việc xử dụng pin, qua bài viết này mình sẽ giúp các bạn có một cái nhìn rõ hơn về vấn đề pin với Intel Edison.

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