강의

멘토링

커뮤니티

NEW
하드웨어

/

임베디드 · IoT

ESP32 IoT 개발 기초 - 하드웨어부터 FreeRTOS까지

이 과정은 ESP32와 IoT 개발을 처음 접하는 학습자가 환경 세팅 → 언어 기초 → 하드웨어 제어 → RTOS 활용까지 익히는 것을 목표로 합니다. 이 과정 목표는 크게 다음과 같습니다. - ESP32 개발 환경과 기본 툴 사용 능력 습득 - C 언어와 ESP-IDF 구조 이해 - FreeRTOS 태스크 및 기본 동기화 방식 이해 - GPIO·I2C·SPI·UART를 통한 하드웨어 제어 가능 - 저장소와 메모리 구조 이해 및 간단한 데이터 영구 저장 구현 가능

1명 이 수강하고 있어요.

  • 문용준
실습 중심
토이프로젝트
esp32
iot
CIoTFreeRTOS

수강 후 이런걸 얻을 수 있어요

  • ESP-IDF와 개발 환경을 설치·설정하고 프로젝트를 빌드·플래시할 수 있습니다.

  • C 언어와 ESP-IDF 구조를 이해하고 컴포넌트·라이브러리를 활용해 코드를 구성할 수 있습니다.

  • FreeRTOS를 이용해 태스크, 큐, 세마포어, 타이머 등 기본적인 멀티태스킹 기능을 구현할 수 있습니다.

  • GPIO, I2C, SPI, UART를 통해 센서와 주변 장치를 제어하고 데이터를 주고받을 수 있습니다.

  • NVS와 파일 시스템을 사용해 설정과 데이터를 저장하고 메모리 구조를 효율적으로 관리할 수 있습니다.

ESP32 IoT 개발,
하드웨어부터 FreeRTOS까지 완벽 마스터!

ESP32와 IoT 개발, 어디서부터 시작해야 할지 막막하신가요?
환경 설정부터 C 언어, FreeRTOS, 하드웨어 제어까지,
실무에서 바로 통하는 탄탄한 개발 역량을 쌓아보세요.


ESP32 IoT 개발 기초
하드웨어부터 FreeRTOS까지 실전 경험을 쌓습니다.

이 과정은 ESP32와 IoT 개발을 처음 접하는 학습자가 환경 세팅 → C 언어 기초 복습 → 하드웨어 제어 → FreeRTOS 기반 멀티태스킹까지 한 번에 익히는 것을 목표로 한 실전 입문 강의입니다.

ESP32 개발,
실무 프로젝트로 완성하기

이 강의는 단순히 예제 코드를 따라 치는 과정이 아닙니다.
“왜 이렇게 코드를 작성했는지”, “데이터시트는 어디부터 봐야 하는지”, “문제가 생겼을 때 무엇을 의심하고 어떤 로그를 찍어야 하는지”까지 함께 설명하는 것을 가장 중요하게 생각하고 설계했습니다.

Section 1 - 강의 소개 및 개발 환경 준비

본 섹션에서는 ESP32 IoT 개발 과정을 소개하고, 실습에 필요한 ESP-IDF 개발 환경 설정 및 VS Code 설정을 상세히 안내합니다. 또한, ESP32 칩과 모듈의 종류를 비교하며 학습 목표를 설정합니다.

Section 2 - ESP32 기본 기능 및 C 언어 활용

ESP32의 기본적인 로깅, 딜레이, 난수 생성 기능을 실습하고 LED 제어 및 키보드 입력을 통해 하드웨어를 다룹니다. 또한, C 언어의 핵심인 구조체, 포인터, 함수 포인터를 활용하여 코드를 효율적으로 작성하는 방법을 학습합니다.

Section 3 - ESP-IDF 프로젝트 구조 및 컴포넌트 관리

ESP-IDF 프로젝트의 내부 구조를 이해하고, C 및 H 파일을 참조하는 방법을 익힙니다. 외부 라이브러리를 활용하기 위한 컴포넌트의 개념과 외부 컴포넌트 추가 및 활용 방법을 상세하게 다룹니다.

Section 4 - FreeRTOS 실시간 운영체제 심층 학습

실시간 운영체제인 FreeRTOS의 다양한 기능들을 학습합니다. 태스크 생성 및 관리, 태스크 알림, 뮤텍스, 세마포어, 큐, 이벤트 그룹, 타이머 활용법을 익히며 멀티태스킹 환경에서의 효율적인 개발 방법을 배웁니다.

Section 5 - ESP32 디버깅 및 설정 관리

ESP32 개발 시 필수적인 디버깅 기법을 학습합니다. 수동 디버깅 방법과 스택 트레이스를 활용한 오류 분석 방법을 익히고, Menuconfig를 이용한 프로젝트 설정 및 사용자 정의 설정을 관리하는 방법을 배웁니다.

Section 6 - ESP32 메모리 구조 및 저장소 활용

ESP32의 SRAM, PSRAM, 플래시 메모리 등 다양한 메모리 구조를 이해하고, 동적/정적 메모리 할당 및 스택 메모리 사용법을 학습합니다. 또한, NVS와 SPIFFS 파일 시스템을 활용하여 데이터를 영구적으로 저장하고 관리하는 방법을 실습합니다.

Section 7 - GPIO 및 아날로그/디지털 입출력 제어

GPIO 핀을 이용한 출력, 입력, 인터럽트 처리 및 디바운싱 기법을 학습합니다. 또한, DAC, ADC를 통한 아날로그 신호 처리와 LEDC 및 PWM을 활용한 제어, 터치 센서 인터페이스를 다룹니다.

Section 8 - 주변 장치 통신 프로토콜 실습

UART, I2C, SPI 통신 프로토콜을 사용하여 다양한 주변 장치와 연동하는 방법을 실습합니다. 블루투스 로깅, 센서 데이터 수신, SD 카드 및 SSD 디스플레이 연동 등 IoT 프로젝트에 필수적인 통신 기술을 익힙니다.

이 강의를 들으면 얻게 되는 것들

Point 1. ESP32 실전 개발 환경 구축

ESP-IDF와 툴체인을 직접 설치하고, 프로젝트를 생성·빌드·플래시·모니터링하는 전 과정을 스스로 진행할 수 있게 됩니다. 다양한 로그 옵션과 시리얼 모니터 활용법을 익혀, 코드 변경 → 빌드 → 디버깅까지의 개발 사이클을 자연스럽게 돌릴 수 있습니다.


Point 2. C언어와 ESP-IDF 구조 이해

C 언어 문법을 ESP-IDF 스타일에 맞게 복습하고, 헤더·컴포넌트·라이브러리를 나누어 모듈형 프로젝트를 구성할 수 있습니다. 단순히 코드를 따라 치는 수준을 넘어, “이 기능은 어떤 모듈로 분리해야 하는지”를 판단하고 설계할 수 있는 감각을 기르게 됩니다.


Point 3. FreeRTOS 멀티태스킹

FreeRTOS의 Task, Queue, Semaphore, Timer를 사용해 여러 작업이 동시에 동작하는 구조를 설계하고 구현할 수 있습니다. 우선순위와 스케줄링 개념을 이해하고, 로그를 통해 “지금 어떤 Task가 무엇을 하고 있는지”를 분석하며 디버깅하는 방법을 익히게 됩니다.


Point 4. 하드웨어, 저장소 데모

GPIO, I2C, SPI, UART를 통해 각종 센서와 주변 장치를 제어하고 데이터를 송수신하는 코드를 직접 작성할 수 있습니다. 더불어 NVS와 파일 시스템을 활용해 설정 값과 측정 데이터를 플래시에 저장하고, ESP32의 메모리·저장소 구조를 이해하여 작은 IoT 장치의 전체 동작 흐름을 설계·구현할 수 있습니다.


ESP32와 IoT 개발, 어디서부터 시작해야 할지 막막하신가요?


✔️ ESP32 및 임베디드 개발 입문자

  • C언어와 ESP-IDF 환경 설정부터 차근차근 배우고 싶으신 분

  • 하드웨어 제어의 기본 원리를 직접 실습하며 이해하고 싶으신 분

  • 나만의 IoT 기기를 만들어보고 싶다는 꿈을 가진 입문자

✔️ C 언어 기반의 임베디드 개발 경험을 쌓고 싶은 개발자

  • ESP-IDF 프레임워크와 C언어 문법을 연계하여 학습하고 싶으신 분

  • FreeRTOS의 기본 개념과 태스크 관리 방법을 익히고 싶으신 분

  • 다양한 하드웨어 인터페이스(GPIO, I2C, SPI, UART) 활용 능력을 키우고 싶으신 분

✔️ IoT 프로토타입 제작 및 펌웨어 개발 역량을 강화하고 싶은 메이커 및 엔지니어

  • 센서 및 모듈을 ESP32에 연결하여 실제 작동하는 프로토타입을 만들고 싶으신 분

  • NVS, SPIFFS 등을 활용하여 데이터를 효율적으로 저장하고 관리하는 방법을 배우고 싶으신 분

  • 제품화 전 단계에서 필요한 펌웨어 개발 경험과 문제 해결 능력을 기르고 싶으신 분


이제 복잡한 이론은 그만! ESP32와 함께라면 누구나 IoT 개발자가 될 수 있습니다.
하드웨어부터 FreeRTOS까지, 여러분의 IoT 프로젝트를 현실로 만들어보세요.

수강 전 참고 사항


실습 환경

  • Windows 운영체제가 필요합니다.

  • ESP-IDF 개발 도구 및 VS Code 설치가 필수입니다.


선수 지식 및 유의사항

  • C 언어 기본 문법을 이해하면 좋습니다.

  • 임베디드 개발 경험이 없어도 괜찮습니다.

  • ESP32 보드 1개 이상 준비가 필요합니다.

학습 자료

  • 실습 프로젝트 소스 코드를 제공합니다.

  • 참고용 ESP-IDF 공식 문서를 활용합니다.


이런 분들께
추천드려요

학습 대상은
누구일까요?

  • ESP32 및 임베디드 개발을 처음 시작하는 입문자

  • C 언어를 학습하며 하드웨어 제어를 배우고 싶은 학생·개발자

  • ESP-IDF 환경과 FreeRTOS 기반 개발을 배우고 싶은 임베디드 개발자

  • 센서·모듈을 ESP32에 연결해 IoT 프로토타입을 만들고 싶은 메이커(Maker)

  • 제품화 전 단계의 펌웨어 개발 경험을 쌓고 싶은 엔지니어

선수 지식,
필요할까요?

  • 기본적인 C 언어 문법

  • 기본 프로그래밍 경험

  • 하드웨어 기초 지식

  • MCU 개발 경험

  • 기본 네트워크 개념

안녕하세요
입니다.

안녕하세요, 문용준입니다.
저는 현재 마이크로소프트에서 Technical Support Engineer로 근무하며, Microsoft 365, OneDrive, SharePoint, Copilot, Office 등 Modern Work 분야의 기술 지원을 담당하고 있습니다. 2022년 입사 이후 IIS 웹 애플리케이션, Edge 브라우저, Azure Bot 클라우드 서비스 전반의 엔지니어링 문제 해결 경험을 쌓아왔습니다.

마이크로소프트 이전에는 임베디드·IoT 엔지니어로 활동하며 다양한 디바이스 펌웨어, BLE 통신, GUI 개발 및 프로젝트 기술 관리 경험을 보유하고 있습니다. 또한 엘리스(Elice)에서 IoT 트랙 프로젝트 코치로 활동하며, 수강생들의 디바이스 프로그래밍 및 임베디드 C 프로젝트를 지도한 경험도 있습니다.

특히, 펌웨어 설계(nRF52, ESP32 등), IoT 프로젝트 관리, M365 기술 지원에 이르는 넓은 기술 스펙트럼을 바탕으로 강의를 통해 이론과 실무를 균형 있게 전달하는 것을 목표로 하고 있습니다.

저의 강의는 단순한 기능 설명을 넘어 실제 업무와 프로젝트에서 부딪히는 문제를 해결할 수 있는 실질적 지식을 드리는 데 중점을 두고 있습니다.

여러분과 함께 성장하며, 새로운 기술을 배우고 활용하는 즐거움을 나누고 싶습니다.

Yong Jun Moon | LinkedIn

커리큘럼

전체

79개 ∙ (12시간 2분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!

얼리버드 할인 중 (5일 남음)

월 ₩46,200

5개월 할부 시

30%

₩330,000

₩231,000

비슷한 강의

같은 분야의 다른 강의를 만나보세요!