Arduino UNO R4 RGB LED
Hướng dẫn này sẽ chỉ bạn cách sử dụng Arduino để điều khiển RGB LED. Cụ thể, chúng ta sẽ học:
- Cách RGB LED hoạt động
- Cách kết nối RGB LED với Arduino UNO R4
- Cách kết nối RGB LED module với Arduino UNO R4
- Cách lập trình Arduino UNO R4 để điều khiển màu sắc của RGB LED

Phần Cứng Cần Thiết
| 1 | × | Arduino UNO R4 WiFi hoặc Arduino UNO R4 Minima | ||
| 1 | × | (Tùy chọn) DIYables STEM V4 IoT, tương thích với Arduino Uno R4 WiFi | ||
| 1 | × | Arduino UNO R4 Minima (Thay thế) | ||
| 1 | × | USB Cable Type-A to Type-C (for USB-A PC) | ||
| 1 | × | USB Cable Type-C to Type-C (for USB-C PC) | ||
| 1 | × | mô-đun LED RGB | ||
| 1 | × | (Thay thế) RGB LED | ||
| 1 | × | breadboard | ||
| 1 | × | dây jumper | ||
| 1 | × | (Khuyến nghị) Screw Terminal Block Shield for Arduino UNO R4 | ||
| 1 | × | (Khuyến nghị) Breadboard Shield for Arduino UNO R4 | ||
| 1 | × | (Khuyến nghị) Enclosure for Arduino UNO R4 | ||
| 1 | × | (Khuyến nghị) Power Splitter for Arduino UNO R4 | ||
| 1 | × | (Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO |
Or you can buy the following kits:
| 1 | × | DIYables STEM V4 IoT Starter Kit (Arduino included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Giới Thiệu Về RGB LED
RGB LED có thể tạo ra bất kỳ màu nào bằng cách kết hợp ba màu cơ bản: đỏ (red), xanh lá cây (green), và xanh lam (blue). Nó chứa ba LED riêng biệt: một LED đỏ, một LED xanh lá cây, và một LED xanh lam. Tất cả được đặt cùng nhau trong một đơn vị.
Sơ Đồ Chân
RGB LED có bốn chân.
- Kết nối chân Common (Cathode-) với GND (0V).
- Chân R (red) điều khiển màu đỏ.
- Chân G (green) điều khiển màu xanh lá cây.
- Chân B (blue) điều khiển màu xanh lam.

Để kết nối RGB LED với Arduino UNO R4, chúng ta nên sử dụng các điện trở hạn chế dòng điện, điều này làm cho việc thiết lập trở nên hơi phức tạp. Tuy nhiên, chúng ta có thể sử dụng RGB LED module đã có sẵn các điện trở này.
RGB LED module cũng có bốn chân.
- Chân Common (Cathode-) nên được kết nối với GND (0V).
- Chân R (red) điều khiển màu đỏ.
- Chân G (green) điều khiển màu xanh lá cây.
- Chân B (blue) điều khiển màu xanh lam.

※ Lưu ý:
Hướng dẫn này sử dụng RGB LED với cathode chung. Điều này có nghĩa là chân chung là cathode. Các RGB LED khác nhau có thể có chân chung là anode.
Cách Hoạt Động
Trong vật lý, một màu được tạo thành từ ba giá trị: Red (R), Green (G), và Blue (B). Mỗi giá trị có thể từ 0 đến 255.
⇒ Có tổng cộng 256 x 256 x 256 màu được tạo ra bằng cách kết hợp ba giá trị khác nhau.
⇒ Nếu chúng ta gửi tín hiệu PWM (với chu kỳ nhiệm vụ từ 0 đến 255) đến các chân R, G, và B, chúng ta có thể làm cho RGB LED hiển thị bất kỳ màu nào chúng ta chọn. Chu kỳ nhiệm vụ của tín hiệu PWM đến các chân R, G, và B tương ứng với các giá trị màu Red (R), Green (G), và Blue (B).
Sơ Đồ Đấu Nối
- Sơ đồ đấu nối giữa Arduino UNO R4 và RGB LED.

This image is created using Fritzing. Click to enlarge image
Không sử dụng một điện trở trên chân chung của RGB LED. Thay vào đó, sử dụng ba điện trở riêng biệt trên các chân khác như sơ đồ trên. Các LED khác nhau trong gói RGB không có cùng đặc tính, có nghĩa là chúng không chia sẻ dòng điện một cách đều nhau. Điều này có thể gây ra độ sáng không đồng đều và có thể làm hỏng LED nếu sử dụng một điện trở duy nhất trên chân chung.
- Sơ đồ đấu nối giữa Arduino UNO R4 và RGB LED module

This image is created using Fritzing. Click to enlarge image
Cách Điều Khiển RGB LED
Hãy học từng bước cách thay đổi RGB LED thành bất kỳ màu nào, ví dụ, màu #00979D.
- Chọn màu bạn muốn sử dụng và tìm mã màu của nó.
- Bạn có thể chọn mã màu từ color picker này.
- Nếu bạn cần một màu từ một bức ảnh, hãy sử dụng công cụ Colors From Image này.
- Chuyển đổi mã màu thành các giá trị RGB bằng công cụ này. Ghi nhớ các giá trị này: R = 0, G = 151, B = 157.

- Định nghĩa các chân Arduino UNO R4 kết nối với các chân R, G, và B. Ví dụ:
- Cấu hình các chân Arduino UNO R4 này làm đầu ra.
- Lập trình chân Arduino để tạo tín hiệu PWM hiển thị màu (#00979D; R = 0, G = 151, B = 157).
Code Ví Dụ Arduino UNO R4 - RGB LED
Code dưới đây thay đổi màu LED theo thứ tự:
- #00C9CC (R = 0, G = 201, B = 204)
- #F7788A (R = 247, G = 120, B = 138)
- #34A853 (R = 52, G = 168, B = 83)
Khi sử dụng nhiều màu, chúng ta có thể rút ngắn code bằng cách tạo một hàm:
Kiến Thức Bổ Sung
- Để thiết lập RGB LED với Anode chung:
- Kết nối chân chung với chân 3.3V trên Arduino UNO R4.
- Trong hàm analogWrite(), điều chỉnh các giá trị R, G, và B thành 255 - R, 255 - G, và 255 - B tương ứng.
- Một chuỗi RGB LED kết nối với nhau tạo thành một RGB LED Strip. Có hai loại LED Strip: addressable và non-addressable. Chúng tôi sẽ cung cấp hướng dẫn cho từng loại.