ESP32 마이크로파이썬 RGB LED
이 가이드는 ESP32와 MicroPython을 사용하여 RGB LED를 제어하는 방법을 보여줍니다. 다음 내용을 다룹니다:
- RGB LED 제어 방법
- ESP32에 RGB LED를 연결하는 방법
- ESP32에 RGB LED 모듈을 연결하는 방법
- RGB LED의 색상을 제어하기 위한 ESP32용 MicroPython 코드 작성 방법

준비물
1 | × | ESP32 ESP-WROOM-32 개발 모듈 | 쿠팡 | 아마존 | |
1 | × | USB 케이블 타입-A to 타입-C (USB-A PC용) | 쿠팡 | 아마존 | |
1 | × | USB 케이블 타입-C to 타입-C (USB-C PC용) | 아마존 | |
1 | × | RGB LED 모듈 | 쿠팡 | 아마존 | |
1 | × | (또는) RGB LED | 아마존 | |
1 | × | 브레드보드 | 쿠팡 | 아마존 | |
1 | × | 점퍼케이블 | 쿠팡 | 아마존 | |
1 | × | (추천) ESP32용 스크루 터미널 확장 보드 | 쿠팡 | 아마존 | |
1 | × | (추천) ESP32용 전원 분배기 | 쿠팡 | 아마존 |
RGB LED에 대하여
RGB LED는 빨강, 초록, 파랑 세 가지 기본 색상을 조합하여 모든 색상을 만들어낼 수 있습니다. 하나의 장치 안에 빨강, 초록, 파랑 LED가 각각 하나씩 탑재되어 있습니다.
핀아웃
RGB LED는 네 개의 핀이 있습니다.
- 공통(캐소드) 핀을 GND(0V)에 연결합니다.
- R(빨강) 핀이 빨간색을 관리합니다.
- G(녹색) 핀이 녹색을 관리합니다.
- B(파랑) 핀이 파란색을 관리합니다.

ESP32에 RGB LED를 연결하려면 전류를 조절하는 저항을 사용하는 것이 좋지만, 이로 인해 과정이 복잡해집니다. 그러나 이미 이러한 저항이 포함된 RGB LED 모듈을 사용할 수 있습니다.
RGB LED 모듈에도 네 개의 핀이 있습니다.
- 공통(캐소드) 핀을 GND (0V)에 연결합니다.
- R (레드) 핀이 빨간색을 제어합니다.
- G (그린) 핀이 초록색을 제어합니다.
- B (블루) 핀이 파란색을 제어합니다.

※ 주의:
이 가이드는 공통 캐소드인 RGB LED 사용 방법을 보여줍니다. 이는 캐소드가 공통 핀임을 의미합니다. 일부 RGB LED는 공통 핀이 애노드일 수 있습니다.
작동 원리
물리학에서 색은 빨강(R), 초록(G), 파랑(B)의 세 가지 값으로 구성됩니다. 이 값들은 0부터 255까지의 범위를 가집니다.
세 가지 서로 다른 값을 혼합하여 만들어진 색상은 16,777,216가지입니다.
R, G, B 핀에 PWM 신호(듀티 비트 범위: 0에서 255)를 전송함으로써 RGB LED가 어떤 색상이든 표시하도록 할 수 있습니다. R, G, B 핀에 전달되는 PWM 듀티 사이클은 각각 빨간색(R), 초록색(G), 파란색(B)의 색상 값에 해당합니다.
선연결
- 브레드보드를 사용하여 ESP32와 RGB LED를 연결하는 방법

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
RGB LED의 공통 핀에 하나의 저항만 연결하지 마십시오. 도면에 표시된 대로 나머지 각 핀에 하나씩, 총 세 개의 서로 다른 저항을 연결해야 합니다. RGB 패키지의 LED는 특성이 다르기 때문에 동일한 전류를 사용하지 않습니다. 이 차이로 인해 LED의 밝기가 고르지 않게 빛날 수 있으며, 공통 핀에 하나의 저항만 사용하면 LED가 손상될 수도 있습니다.
- ESP32와 스크류 터미널 블록 브레이크아웃 보드를 사용하여 RGB LED 모듈 연결 방법:

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
RGB LED 제어 방법
RGB LED를 #00979D와 같은 특정 색상으로 단계별로 변경하는 방법을 배워봅시다.
- 선호하는 색상을 선택하고 해당 색상 코드를 확인하세요.
- 이 색상 코드 선택기를 사용하세요: color picker.
- 사진에서 색상 코드를 추출하려면 이 도구를 사용해 보세요: Colors From Image.
- 이 변환기를 사용하여 색상 코드를 RGB 형식으로 변경하세요: RGB converter. 이 숫자에 주의하세요: R = 0, G = 151, B = 157.

- ESP32 핀이 R(빨강), G(녹색), B(파랑) 핀에 연결되는 핀을 정의합니다. 예를 들어:
- ESP32 핀들을 출력 모드로 설정합니다.
- PWM 주파수를 1000 Hz로 설정
- PWM 듀티 사이클 설정
ESP32 - RGB LED 예제 코드
아래 코드는 LED의 색상을 다음 순서대로 변경합니다:
- #00C9CC (빨강 = 0, 초록 = 201, 파랑 = 204)
- #F7788A (빨강 = 247, 초록 = 120, 파랑 = 138)
- #34A853 (빨강 = 52, 초록 = 168, 파랑 = 83)