ESP32 C3 Super Mini MP3 플레이어
ESP32 C3 Super Mini, 시리얼 MP3 플레이어 모듈, Micro SD 카드, 스피커로 작은 MP3 플레이어를 만드는 방법을 배워보세요. 노래는 Micro SD 카드에 저장되고, ESP32 C3 Super Mini는 간단한 시리얼 명령을 보내 모듈에 무엇을 재생할지 알려줍니다. 이 초보자용 ESP32 C3 Super Mini MP3 플레이어 프로젝트는 전선 몇 개와 짧은 스케치만 있으면 됩니다.
이 튜토리얼에서 배울 내용:
- 시리얼 MP3 플레이어 모듈의 작동 원리
- MP3 플레이어 모듈과 스피커를 ESP32 C3 Super Mini에 연결하는 방법
- Micro SD 카드의 노래를 재생하도록 ESP32 C3 Super Mini를 프로그래밍하는 방법
- 재생, 일시 정지, 다음, 이전 버튼을 추가하는 방법
- 볼륨 조절 기능으로 프로젝트를 확장하는 방법

필요한 하드웨어
| 1 | × | ESP32 C3 Super Mini | 아마존 | |
| 1 | × | USB 케이블 타입-A to 타입-C (USB-A PC용) | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-C to 타입-C (USB-C PC용) | 아마존 | |
| 1 | × | 시리얼 MP3 플레이어 모듈 | 쿠팡 | 아마존 | |
| 1 | × | 마이크로 SD 카드 | 아마존 | |
| 1 | × | 3.5mm Aux 스피커 | 아마존 | |
| 1 | × | 브레드보드 | 쿠팡 | 아마존 | |
| 1 | × | 점퍼케이블 | 쿠팡 | 아마존 |
시리얼 MP3 플레이어 모듈과 스피커에 대하여
시리얼 MP3 플레이어 모듈은 Micro SD 카드에서 MP3 파일을 읽어 소리로 바꾸는 작은 오디오 플레이어입니다.
주요 특징:
- Micro SD 카드에 저장된 MP3 파일 재생
- 간단한 시리얼(UART) 명령으로 제어
- 내장 앰프와 3.5mm Aux 출력 탑재
- 재생, 일시 정지, 건너뛰기, 반복, 볼륨 변경 가능
- ESP32 C3 Super Mini와 잘 작동
기술 사양:
- 전원 공급: 5V
- 시리얼 속도: 9600 보드, 8 데이터 비트, 패리티 없음, 1 정지 비트
- RX 로직 레벨: 3.3V 호환이지만 직렬 저항 사용을 권장
- 저장 장치: Micro SD 카드 (FAT16 / FAT32)
- 오디오 출력: 3.5mm Aux 암 잭
시리얼 MP3 플레이어 모듈 핀아웃
이 모듈에는 세 가지 인터페이스가 있습니다.
- ESP32 C3 Super Mini와의 인터페이스는 4개의 핀으로 구성됩니다:
- RX 핀: 데이터 핀으로, ESP32 C3 Super Mini의 TX 핀에 연결합니다
- TX 핀: 데이터 핀으로, ESP32 C3 Super Mini의 RX 핀에 연결합니다
- VCC 핀: 전원 핀으로, 5V에 연결합니다
- GND 핀: 전원 핀으로, GND(0V)에 연결합니다
- 스피커와의 인터페이스는 3.5mm Aux 출력 암 잭입니다.
- Micro SD 카드와의 인터페이스는 모듈 뒷면에 있는 Micro SD 카드 소켓입니다.

스피커 핀아웃
스피커에는 보통 두 가지 인터페이스가 있습니다.
- 오디오 신호 인터페이스: MP3 플레이어 모듈에 꽂는 3.5mm Aux 수 커넥터
- 전원 인터페이스: USB, 5V 전원 어댑터 또는 기타 전원일 수 있습니다
작동 원리
ESP32 C3 Super Mini MP3 플레이어에서 소리를 내는 데는 몇 단계만 필요합니다.
- 카드 준비: 재생하려는 노래나 녹음된 오디오를 Micro SD 카드에 복사합니다.
- 카드 삽입: Micro SD 카드를 MP3 플레이어 모듈의 소켓에 밀어 넣습니다.
- 배선: MP3 플레이어 모듈을 ESP32 C3 Super Mini에 연결하고, 스피커를 모듈에 꽂습니다.
- 스피커 전원: 스피커에 별도의 전원이 공급되는지 확인합니다.
Micro SD 카드의 각 MP3 파일에는 0부터 시작하는 ID가 부여됩니다. 그러면 ESP32 C3 Super Mini는 모듈에 다음과 같은 작업을 지시할 수 있습니다:
- 재생: 선택한 노래 재생을 시작합니다.
- 일시 정지: 노래를 일시 정지합니다.
- 다음 곡 재생: 다음 노래로 이동합니다.
- 이전 곡 재생: 이전 노래로 돌아갑니다.
- 볼륨 변경: 음악 소리 크기를 조절합니다.
MP3 플레이어 모듈은 명령을 받으면 Micro SD 카드에서 MP3 파일을 읽어 오디오 신호로 변환하고, 그 신호를 3.5mm Aux 연결을 통해 스피커로 보냅니다.
※ 주의:
ESP32 C3 Super Mini는 시리얼 모니터용으로 GPIO20과 GPIO21을 사용합니다. 이 두 핀은 비워 두어야 합니다. 그래서 이 튜토리얼에서는 MP3 플레이어 모듈용으로 GPIO6과 GPIO7에 두 번째 하드웨어 시리얼 포트를 사용합니다.
배선 다이어그램
아래와 같이 MP3 플레이어 모듈을 ESP32 C3 Super Mini에 연결합니다.

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
- 참고: TX는 RX로, RX는 TX로 연결합니다. 이 두 선을 교차 연결하는 부분에서 가장 흔히 실수합니다.
- 참고: 모듈에는 3.3V가 아닌 5V로 전원을 공급하세요. 스피커를 구동하려면 5V가 필요합니다.
- 참고: 모듈의 어떤 핀도 GPIO20 또는 GPIO21에 연결하지 마세요 — 이 핀들은 시리얼 모니터용입니다.
| 시리얼 MP3 플레이어 모듈 핀 | ESP32 C3 Super Mini 핀 |
|---|---|
| VCC | 5V |
| GND | GND |
| RX | GPIO6 (ESP32 TX) |
| TX | GPIO7 (ESP32 RX) |
※ 주의:
시리얼 MP3 플레이어 모듈은 5V 전원이 필요하지만, RX 핀은 3.3V 로직을 기대합니다. ESP32 C3 Super Mini는 3.3V 보드이므로 TX 레벨은 이미 안전합니다. 모듈을 보호하고 신호를 깨끗하게 유지하려면 ESP32 C3 Super Mini의 GPIO6 핀과 모듈 RX 핀 사이의 RX 라인에 1kΩ 저항을 직렬로 넣는 것을 권장합니다.
ESP32 C3 Super Mini 코드 - 음악 재생
이 첫 번째 스케치는 Micro SD 카드에 저장된 첫 번째 노래를 재생합니다.
이 코드가 하는 일:
- 115200 보드로 시리얼 모니터를 시작합니다
- GPIO6(TX)과 GPIO7(RX)에서 9600 보드로 두 번째 하드웨어 시리얼 포트를 시작합니다
- 모듈에 Micro SD 카드를 저장 장치로 사용하도록 지시합니다
- 재생 명령을 보내 첫 번째 노래가 바로 시작되도록 합니다
- 각 명령을 모듈이 이해하는 8바이트 프레임으로 구성합니다
빠른 단계
- ESP32 C3 Super Mini가 처음이신가요? 먼저 ESP32 C3 슈퍼 미니 - 시작하기 튜토리얼을 완료하여 개발 환경을 설정하세요.
- 카드 준비: MP3 파일 몇 개를 Micro SD 카드에 복사하고 모듈에 삽입합니다.
- 부품 연결: 위의 배선 다이어그램을 따르고, 스피커를 모듈의 Aux 잭에 꽂습니다.
- 보드 연결: USB Type-C 케이블로 ESP32 C3 Super Mini를 컴퓨터에 연결합니다.
- 보드 선택: Tools > Board에서 ESP32 C3 Super Mini가 선택되어 있는지 확인합니다.
- 포트 선택: Tools > Port에서 올바른 COM 포트를 선택합니다.
- 코드 업로드: 위 코드를 Arduino IDE에 복사하고 Upload 버튼을 클릭합니다.
- 시리얼 모니터 열기: 보드레이트를 115200으로 설정하여 메시지를 확인합니다.
- 음악 감상: 카드의 첫 번째 노래가 스피커를 통해 재생되기 시작합니다.
- 전문가 팁: 아무 소리도 들리지 않으면 먼저 RX와 TX 선을 바꿔보세요 — 데이터 선이 잘못 교차된 것이 흔한 원인입니다.
ESP32 C3 Super Mini 코드 - 제어 버튼으로 음악 재생
이 두 번째 스케치는 첫 번째 스케치의 업그레이드 버전입니다. 버튼 네 개를 추가하여 ESP32 C3 Super Mini MP3 플레이어를 손으로 제어할 수 있습니다.
이 코드가 하는 일:
- EzButton 라이브러리로 50 ms 디바운스를 적용하여 버튼 네 개를 읽습니다
- GPIO2의 버튼이 눌리면 재생 명령을 보냅니다
- GPIO3의 버튼이 눌리면 일시 정지 명령을 보냅니다
- GPIO4의 버튼이 눌리면 다음 곡 재생 명령을 보냅니다
- GPIO5의 버튼이 눌리면 이전 곡 재생 명령을 보냅니다
- 수행 중인 작업을 시리얼 모니터에 출력합니다
위 코드의 배선 다이어그램:

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
| 버튼 | ESP32 C3 Super Mini 핀 |
|---|---|
| 재생 버튼 | GPIO2 |
| 일시 정지 버튼 | GPIO3 |
| 다음 버튼 | GPIO4 |
| 이전 버튼 | GPIO5 |
| 각 버튼의 반대쪽 | GND |
- 참고: 각 버튼은 해당 GPIO 핀과 GND 사이에 연결합니다. ezButton 라이브러리가 내부 풀업을 대신 켜줍니다.
- 참고: MP3 모듈은 여전히 GPIO6과 GPIO7을 사용하므로 이 핀들을 버튼용으로 다시 사용하지 마세요.
시리얼 모니터 출력
버튼을 누르면 115200 보드에서 다음과 같은 메시지를 볼 수 있습니다.
※ 주의:
시리얼 모니터를 열기 전에 업로드가 끝나면 첫 번째 줄이 보이지 않을 수 있습니다. 버튼을 다시 누르기만 하면 됩니다.
이제 ESP32 C3 Super Mini MP3 플레이어에 더 많은 기능을 추가할 수 있습니다. 예를 들면:
- 볼륨 노브: 포텐셔미터를 추가하여 볼륨을 조절합니다. ESP32 C3 Super Mini - 포텐셔미터 튜토리얼을 참조하세요
- 리모컨: IR 리모컨을 추가하여 방 건너편에서도 노래를 바꿀 수 있습니다
- RFID 플레이어: RFID 리더와 카드를 추가하여 RFID MP3 플레이어를 만듭니다. ESP32 C3 Super Mini - RFID 튜토리얼을 참조하세요
응용 분야 및 프로젝트 아이디어
ESP32 C3 Super Mini MP3 플레이어로 만들 수 있는 재미있는 것들입니다.
- 어린이 이야기 상자: 큰 버튼을 누르면 잠자리 동화를 재생합니다.
- 초인종: 누군가 벨을 누르면 원하는 멜로디나 녹음된 인사말을 재생합니다.
- 박물관 가이드: 각 RFID 태그에 맞는 오디오 클립을 재생합니다.
- 알람 시계: 삐 소리 대신 좋아하는 음악으로 일어납니다.
- 말하는 로봇: 로봇이 움직이는 동안 녹음된 음성을 재생합니다.
- 매장 안내 방송: 모션 센서가 손님을 감지하면 환영 메시지를 재생합니다.
도전 과제
더 많이 배우기 위해 다음과 같은 작은 업그레이드를 시도해보세요.
- 쉬움: 1번 노래 대신 3번 노래부터 재생하도록 코드를 변경해보세요.
- 쉬움: CMD_SET_VOLUME 명령으로 setup()에서 볼륨을 설정해보세요.
- 보통: 한 곡 반복을 켜고 끄는 다섯 번째 버튼을 추가해보세요.
- 보통: GPIO4에 포텐셔미터를 사용하여 실시간으로 볼륨을 설정해보세요.
- 고급: 현재 트랙 번호를 표시하는 OLED 디스플레이를 추가해보세요.
- 고급: ESP32 C3 Super Mini의 웹 페이지에서 WiFi로 MP3 플레이어를 제어해보세요.