ESP32 C3 Super Mini SD 카드
마이크로 SD 카드를 사용하여 ESP32 C3 Super Mini로 IoT 프로젝트를 위한 데이터를 저장하고 검색하는 방법을 배웁니다. 이 튜토리얼은 SD 카드 모듈 배선부터 파일 읽기, 쓰기 및 관리까지 모든 것을 다룹니다.
이 가이드에서 배우게 될 내용:
- 마이크로 SD 카드 모듈이 무엇이고 ESP32 C3 Super Mini와 어떻게 작동하는지
- SD 카드 모듈을 ESP32 C3 Super Mini에 연결하는 방법
- 마이크로 SD 카드에서 파일을 열고, 만들고, 읽고, 쓰는 방법
- 데이터를 추가하고 기존 파일을 덮어쓰는 방법
- 파일 내용을 문자별 및 라인별로 읽는 방법

필요한 하드웨어
| 1 | × | ESP32 C3 Super Mini | 아마존 | |
| 1 | × | USB 케이블 타입-A to 타입-C (USB-A PC용) | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-C to 타입-C (USB-C PC용) | 아마존 | |
| 1 | × | 마이크로 SD 카드 | 아마존 | |
| 1 | × | 마이크로 SD 카드 모듈 | 쿠팡 | 아마존 | |
| 1 | × | 점퍼케이블 | 쿠팡 | 아마존 | |
| 1 | × | 브레드보드 | 쿠팡 | 아마존 | |
| 1 | × | (옵션) MicroSD to SD 메모리 카드 어댑터 | 아마존 |
마이크로 SD 카드 모듈 소개
마이크로 SD 카드 모듈은 ESP32 C3 Super Mini가 SPI 통신을 사용하여 마이크로 SD 카드에서 데이터를 읽고 쓸 수 있게 해주는 인터페이스 보드입니다.
주요 특징 및 사양:
- 데이터 전송을 위한 SPI 통신 프로토콜 사용
- FAT16 또는 FAT32로 포맷된 마이크로 SD 카드 지원
- 동작 전압: 3.3V에서 5V
- ESP32 C3 Super Mini와 저장 매체 사이의 브리지 역할
- 데이터 로깅 프로젝트 및 센서 판독값 저장에 완벽함
- 간단한 배선으로 초보자 친화적
사용 이유:
- ESP32 프로젝트에 확장 가능한 저장소 추가
- 장시간에 걸쳐 센서 데이터 기록
- 구성 파일 또는 웹 콘텐츠 저장
- 독립 실행형 IoT 응용에 훌륭함
핀아웃
마이크로 SD 카드 모듈은 통신을 위해 6핀 SPI 인터페이스를 사용합니다.

핀 연결:
- VCC: ESP32 C3 Super Mini 5V pin에 연결하여 전원 공급
- GND: ESP32 C3 Super Mini 접지 핀에 연결
- MISO: Master In Slave Out - SD 카드의 데이터에 대해 ESP32의 MISO 핀에 연결
- MOSI: Master Out Slave In - SD 카드에 데이터에 대해 ESP32의 MOSI 핀에 연결
- SCK: Serial Clock - 타이밍 동기화에 대해 ESP32의 SCK 핀에 연결
- SS: Slave Select - 코드에서 정의한 디지털 핀 (일반적으로 CS 핀)에 연결
준비
시작하기 전에 마이크로 SD 카드를 올바르게 준비합니다:
- 마이크로 SD 카드를 USB 3.0 SD 카드 리더에 삽입합니다
- 리더를 PC에 연결합니다
- 마이크로 SD 카드를 FAT16 또는 FAT32로 포맷합니다 (서식 지정 지침은 온라인에서 검색)
- 포맷된 후 카드를 안전하게 꺼냅니다
- 포맷된 카드를 마이크로 SD 카드 모듈에 삽입합니다
배선 다이어그램
아래 다이어그램에 따라 ESP32 C3 Super Mini를 마이크로 SD 카드 모듈에 연결합니다.

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
배선 연결:
| Micro SD Module Pin | ESP32 C3 Super Mini Pin |
|---|---|
| VCC | 5V |
| GND | GND |
| MISO | GPIO5 (MISO) |
| MOSI | GPIO6 (MOSI) |
| SCK | GPIO4 (SCK) |
| SS | GPIO7 (CS) |
안전 주의:
- 전원을 켜기 전에 모든 연결을 다시 확인합니다
- 코드를 실행하기 전에 SD 카드가 제대로 삽입되어 있는지 확인합니다
- 읽기/쓰기 오류를 방지하기 위해 고품질 SD 카드를 사용합니다
ESP32 C3 Super Mini - 마이크로 SD 카드의 파일을 열고 없으면 만드는 방법
코드 개요
이 예제는 SD 카드를 초기화하고 파일을 열고 없으면 자동으로 생성하는 방법을 보여줍니다.
코드가 하는 일:
- SPI 통신을 사용하여 SD 카드 모듈 초기화
- 카드에 "esp32.txt"라는 파일이 존재하는지 확인
- 파일을 찾을 수 없으면 자동으로 생성
- Serial Monitor에 파일 상태 보고
- 기본 SD 카드 파일 시스템 작업 보여주기
ESP32 C3 Super Mini 코드
빠른 단계
- ESP32 C3 Mini가 처음이신가요? 개발 환경을 설정하려면 먼저 우리의 ESP32 C3 슈퍼 미니 - 시작하기 튜토리얼을 완료합니다.
- SD 카드 준비: 포맷된 마이크로 SD 카드를 SD 카드 모듈에 삽입합니다
- 회로 배선: 위의 배선 다이어그램에 따라 마이크로 SD 카드 모듈을 ESP32 C3 Super Mini에 연결합니다
- ESP32 연결: USB Type-C 케이블을 사용하여 ESP32 C3 Super Mini를 PC에 연결합니다
- Arduino IDE 열기: 컴퓨터에서 Arduino IDE 시작
- 보드 선택: 보드 메뉴에서 ESP32 C3 Super Mini 선택
- 포트 선택: ESP32에 대한 올바른 COM 포트 선택
- Serial Monitor 열기: 업로드하기 전에 Serial Monitor를 엽니다 (Tools > Serial Monitor)
- 코드 복사: 위에서 제공한 코드 복사
- 코드 붙여넣기: 새 Arduino IDE 스케치에 붙여넣기
- 업로드: Upload 버튼을 클릭하여 코드를 ESP32 C3 Super Mini에 플래시합니다
- 결과 보기: Serial Monitor에서 파일 생성 상태 확인
- 프로 팁: Serial Monitor를 항상 업로드 전에 열어 첫 실행부터 모든 초기화 메시지를 확인합니다
Serial Monitor 출력
첫 실행 (파일이 아직 없음):
후속 실행 (파일이 이미 존재):
※ 주의:
Serial Monitor를 열기 전에 업로드를 수행한 첫 실행에서 Serial Monitor 출력을 보지 못할 수 있습니다.
PC에서 확인:
- 마이크로 SD 카드를 모듈에서 제거합니다
- USB SD 카드 리더에 삽입합니다
- 리더를 PC에 연결합니다
- SD 카드 폴더를 열고 esp32.txt 파일이 생성되었는지 확인합니다
ESP32 C3 Super Mini - 마이크로 SD 카드의 파일에서/에서 데이터를 쓰고 읽는 방법
코드 개요
이 예제는 파일에 텍스트 데이터를 쓰고 문자별로 다시 읽는 방법을 보여줍니다.
코드가 하는 일:
- SD 카드에서 파일을 열거나 만듭니다
- 파일에 두 줄의 텍스트를 씁니다
- 전체 파일 내용을 문자별로 읽습니다
- Serial Monitor에 파일 내용을 표시합니다
- ESP32 C3 Super Mini를 사용한 기본 파일 I/O 작업 보여주기
Serial Monitor 출력
예상 출력:
※ 주의:
데이터는 기본적으로 파일의 끝에 추가됩니다. 위의 코드로 ESP32 C3 Super Mini를 재부팅하면 텍스트가 파일에 다시 추가됩니다 ⇒ Serial Monitor에 다음과 같은 더 많은 라인이 표시됩니다:
파일 확인:
- 마이크로 SD 카드를 모듈에서 안전하게 제거합니다
- USB SD 카드 리더에 삽입합니다
- PC에 연결하고 파일을 열어 내용을 봅니다
ESP32 C3 Super Mini - 마이크로 SD 카드의 파일을 라인별로 읽는 방법
코드 개요
이 예제는 더 나은 데이터 구성을 위해 문자별 대신 라인별로 파일 내용을 읽는 방법을 보여줍니다.
코드가 하는 일:
- SD 카드의 기존 파일을 엽니다
- ReadStringUntil()을 사용하여 파일을 라인별로 읽습니다
- 쉬운 추적을 위해 각 라인에 번호 지정
- Serial Monitor에 형식이 지정된 출력 표시
- 구조화된 데이터 또는 로그 읽기에 유용
Serial Monitor 출력
예상 출력:
※ 주의:
파일의 내용이 이전에 삭제되지 않은 경우 Serial Monitor에서 더 많은 라인이 표시될 수 있습니다.
ESP32 C3 Super Mini - 마이크로 SD 카드의 파일을 덮어쓰는 방법
코드 개요
파일 내용을 추가하는 대신 바꾸는 방법을 배웁니다.
코드가 하는 일:
- 존재하는 경우 기존 파일을 삭제합니다
- 같은 이름의 새 파일 만들기
- 파일에 새 콘텐츠 쓰기
- 오래된 추가 콘텐츠 없이 깨끗한 데이터 보장
- ESP32 C3 Super Mini에 대한 파일 교체 기술 보여주기
기본적으로 내용은 파일의 끝에 추가됩니다. 파일을 덮어쓰는 가장 간단한 방법은 기존 파일을 삭제하고 같은 이름으로 새 파일을 만드는 것입니다.
Serial Monitor 출력
예상 출력:
덮어쓰기 테스트:
- ESP32 C3 Super Mini의 재설정 버튼을 누릅니다
- Serial Monitor 출력 확인
- 콘텐츠가 중복되지 않았는지 확인
- 파일에는 한 세트의 라인만 포함되어야 합니다
PC에서 확인:
- 마이크로 SD 카드를 모듈에서 제거합니다
- USB SD 카드 리더에 삽입합니다
- PC에 연결하고 파일을 엽니다
- 콘텐츠가 예상 출력과 일치하는지 확인합니다
응용 아이디어
ESP32 C3 Super Mini를 SD 카드 모듈과 함께 사용하여 구축할 수 있는 실질적인 프로젝트:
- 장기 기후 모니터링을 위한 온도 및 습도 데이터 로거 구축
- WiFi 연결 없이 판독값을 저장하는 독립 실행형 센서 스테이션 만들기
- 타임스탬프가 있는 위치 좌표를 기록하는 GPS 추적기 설계
- 이벤트 로그를 저장하는 움직임 활성화 보안 카메라 만들기
- 토양 습도 데이터를 기록하는 농업 모니터링 시스템 개발
- 일일 사용 통계를 저장하는 전력 소비 미터 구축
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.
아래 비디오에서 이 프로젝트의 시각적 안내를 확인하세요.
...VIDEO esp32-c3-super-mini/micro-sd-card.mp4
...VIDEO
도전 과제
이러한 진행형 도전 수정을 통해 기술을 테스트합니다:
- 쉬움: 코드를 수정하여 사용자 정의 이름의 파일을 만들고 개인 메시지를 작성합니다
- 쉬움: millis() 함수를 사용하여 각 데이터 라인에 타임스탬프 추가
- 중간: 5초마다 타임스탐프와 함께 임의의 센서 값을 기록하는 프로그램 만들기
- 중간: Serial Monitor 명령을 통해 파일을 읽고, 쓰고, 삭제할 수 있는 메뉴 시스템 구축
- 고급: SD 카드 오버플로우를 방지하기 위해 마지막 100 항목만 유지하는 순환 로그 시스템 구현
- 고급: 다양한 센서용 여러 파일이 있는 데이터 로거를 만들고 자동 파일 회전을 구현합니다