ESP32 C3 Super Mini 코드 구조
ESP32 C3 Super Mini 코드 구조를 이해하는 것은 이 강력한 마이크로컨트롤러 보드를 프로그래밍하기 위한 기초입니다. 이 튜토리얼은 ESP32 C3 Super Mini 스케치의 필수 구조를 분석하여 설정 및 루프 함수가 함께 작동하여 기능적인 프로그램을 만드는 방법을 보여줍니다.
이 튜토리얼에서 배울 내용:
- ESP32 C3 Super Mini 코드 구조가 어떻게 작동하는지
- Setup() 및 loop() 함수의 차이점
- 기본 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 | × | (옵션) DC 커넥터 전원 연결 잭 플러그 소켓 | 쿠팡 | 아마존 | |
| 1 | × | 브레드보드 | 쿠팡 | 아마존 | |
| 1 | × | 점퍼케이블 | 쿠팡 | 아마존 |
기본 코드 구조
ESP32 C3 Super Mini 코드 (ESP32 C3 Super Mini 스케치라고도 함)는 Arduino 코드와 동일한 구조를 가지며 설정 코드와 루프 코드의 두 가지 주요 부분을 포함합니다.
설정 코드
- 설정 코드는 setup() 함수의 코드입니다
- 설정 코드는 전원 공급 후 또는 리셋 후 바로 실행됩니다
- 설정 코드는 한 번만 실행됩니다
- 설정 코드는 변수, 핀 모드 초기화, 라이브러리 사용 시작 및 하드웨어 설정 구성에 사용됩니다
- 설정을 일회성 준비 단계로 생각합니다
루프 코드
- 루프 코드는 loop() 함수의 코드입니다
- 루프 코드는 설정 코드 직후에 실행됩니다
- 루프 코드는 반복적으로 (무한히) 실행됩니다
- 루프 코드는 응용 프로그램의 주요 작업을 수행하는 데 사용됩니다
- 여기서 ESP32 C3 Super Mini는 센서를 계속 읽고 출력을 제어하고 작업을 수행합니다
예제
이 간단한 예제는 기본 ESP32 C3 Super Mini 코드 구조를 보여줍니다:
빠른 단계
- ESP32 C3 Mini를 처음 사용하시나요? 먼저 ESP32 C3 슈퍼 미니 - 시작하기 튜토리얼을 완료하여 개발 환경을 설정합니다.
- 처음 설정: ESP32 C3 Super Mini를 처음 사용하는 경우 Arduino IDE에서 ESP32 C3 Super Mini 환경을 설정하는 방법을 참고하세요
- 코드 복사: 위의 코드를 복사하여 Arduino IDE에 붙여넣습니다
- 코드 업로드: Arduino IDE에서 Upload 버튼을 클릭하여 ESP32 C3 Super Mini 보드에 코드를 컴파일하고 업로드합니다
- Serial Monitor 열기: Arduino IDE에서 Serial Monitor 아이콘을 클릭합니다

- 출력 보기: Serial Monitor에서 결과를 확인합니다
- Pro Tip: Serial Monitor 보드 레이트가 115200으로 설정되어 코드와 일치하는지 확인합니다
Serial Monitor에서 보시다시피 "이것은 ESP32 C3 Super Mini 설정 코드입니다"는 한 번만 인쇄되지만 "이것은 ESP32 C3 Super Mini 루프 코드입니다"는 여러 번 인쇄됩니다. 이는 ESP32 C3 Super Mini 설정 코드가 한 번 실행되고 ESP32 C3 Super Mini 루프 코드가 반복적으로 실행됨을 의미합니다. 설정 코드가 먼저 실행됩니다.
※ 주의:
setup() 및 loop() 함수는 ESP32 C3 Super Mini 코드에서 반드시 사용되어야 합니다. 그렇지 않으면 오류가 발생합니다.
다른 부분
설정 및 루프 코드 외에도 ESP32 C3 Super Mini 스케치는 다음 부분 중 일부를 포함할 수 있습니다:
- 블록 주석: 일반적으로 저자, 배선 지침, 라이센스 또는 프로젝트 설명에 대한 정보를 작성하는 데 사용됩니다 - ESP32 C3 Super Mini가 이 부분을 무시합니다
- 라이브러리 포함: 추가 기능을 위해 외부 라이브러리를 스케치에 포함하는 데 사용됩니다
- 상수 정의: 프로그램 실행 중에 변경되지 않는 상수 값을 정의하는 데 사용됩니다
- 전역 변수 선언: setup() 및 loop() 함수 모두에서 액세스할 수 있는 변수
예를 들어:
빠른 단계
- ESP32 C3 Mini를 처음 사용하시나요? 먼저 ESP32 C3 슈퍼 미니 - 시작하기 튜토리얼을 완료하여 개발 환경을 설정합니다.
- 처음 설정: ESP32 C3 Super Mini를 처음 사용하는 경우 Arduino IDE에서 ESP32 C3 Super Mini 환경을 설정하는 방법을 참고하세요
- 코드 복사: 위의 코드를 복사하여 Arduino IDE에 붙여넣습니다
- 코드 업로드: Arduino IDE에서 Upload 버튼을 클릭하여 ESP32 C3 Super Mini 보드에 코드를 컴파일하고 업로드합니다
- Serial Monitor 열기: Arduino IDE에서 Serial Monitor 아이콘을 클릭합니다

- 출력 보기: 증분 개수를 표시하는 Serial Monitor에서 결과를 확인합니다
- Pro Tip: 매초 개수가 증가하는 방식을 봅니다 - 이는 loop()가 반복적으로 실행되는 것을 보여줍니다
지금은 코드를 라인별로 이해할 필요가 없습니다. 코드 구조를 알면 됩니다. 라인별 코드는 다음 튜토리얼에서 설명됩니다.
코드 실행 흐름 이해
ESP32 C3 Super Mini 프로그램의 실행 방식은 다음과 같습니다:
- 전원 켜짐: ESP32 C3 Super Mini 보드가 전원을 받습니다
- setup() 실행: setup() 내의 모든 코드가 한 번 실행됩니다
- loop() 입력: 프로그램이 loop() 함수로 이동합니다
- 반복 계속: 루프 코드는 전원이 꺼지거나 리셋될 때까지 계속 실행됩니다
- 변수 지속: 전역 변수는 루프 반복 사이에 값을 유지합니다
응용 프로그램 아이디어
ESP32 C3 Super Mini 코드 구조를 이해하면 무수히 많은 프로젝트의 문이 열립니다:
- 센서를 loop()에서 읽고 Serial을 setup()에서 초기화하는 온도 모니터링 시스템 구축
- Loop()에서 delay()를 사용한 깜박이는 LED 패턴 생성 및 setup()에서 핀 구성
- Loop()에서 센서 상태를 지속적으로 확인하는 동작 감지기 개발
- Setup()에서 SD 카드를 초기화하고 loop()에서 판독값을 저장하는 데이터 로거 설계
- Setup()에서 WiFi 설정 및 loop()에서 제어 논리를 포함한 홈 자동화 컨트롤러 구축
- Setup()에서 모터를 구성하고 loop()에서 움직임을 처리하는 로봇 생성
자신을 시도해보기
이러한 과제로 ESP32 C3 Super Mini 프로그래밍 구조를 마스터해 봅시다:
- 쉬움: 기본 예제의 지연 값을 수정하여 메시지를 더 빠르거나 느리게 인쇄합니다
- 쉬움: loop()에 다른 Serial.println() 메시지를 추가하여 추가 텍스트를 표시합니다
- 중간: 전역 변수를 사용하여 1에서 10으로 계산한 후 1로 리셋하는 카운터 생성
- 중간: loop()에 조건을 추가하여 짝수 또는 홀수 개수를 기반으로 다양한 메시지를 인쇄합니다
- 고급: 서로 다른 지연이 있는 여러 Serial 메시지를 결합하여 시간 시퀀스 생성
- 고급: delay() 대신 millis()를 사용하는 프로그램을 구축하여 비차단 타이밍 구현