3주차_참고 : ESP32 DevKit 핀 구성 - dhryu60/SmartDevice_2025-1 GitHub Wiki
ESP32 DevKit 핀 구성
ESP32 DevKit은 Wi-Fi 및 Bluetooth 기능을 내장한 강력한 마이크로컨트롤러 개발 보드로, 다양한 GPIO 핀과 통신 인터페이스를 제공합니다.
- 5V: USB 또는 외부 전원 공급 가능
- 3.3V (3V3): 내부 레귤레이터에서 출력된 안정된 전원
- GND: 공통 접지 핀
- 주의: 5V 및 3.3V 핀을 동시에 사용하면 보드 손상 가능
- 디지털 입출력(GPIO): 기본적인 HIGH/LOW 신호 출력 및 입력
- ADC (아날로그-디지털 변환): ADC1(0~4095 범위), ADC2(Wi-Fi와 충돌 가능)
- DAC (디지털-아날로그 변환): GPIO25(DAC1), GPIO26(DAC2)
- 터치 센서: GPIO4, 0, 2, 15, 13, 12, 14, 27, 33, 32
- PWM 출력: 모든 GPIO에서 사용 가능 (GPIO34~39 제외)
- UART0 (USB 연결): TX(GPIO1), RX(GPIO3)
- UART1, UART2: 다른 GPIO로 설정 가능
- VSPI 기본 핀: MOSI(GPIO23), MISO(GPIO19), SCK(GPIO18), CS(GPIO5)
- HSPI 핀 재설정 가능
- 기본 핀: SDA(GPIO21), SCL(GPIO22)
- 풀업 저항(4.7kΩ) 필요
- BOOT (GPIO0): 펌웨어 다운로드 모드 진입 시 필요
- EN (Enable 핀): 칩 활성화 및 리셋
- JTAG 디버깅 핀: GPIO12, 13, 14, 15
- RTC 외부 크리스탈 핀: GPIO32(XTAL_32K_P), GPIO33(XTAL_32K_N)
- DevKit V1 (30핀): 일부 핀 미제공, LED 내장
- DevKitC V4 (38핀): 모든 핀 제공, CP2102N USB 칩 사용
- IoT 프로젝트: 센서 데이터 수집 및 클라우드 전송
- 스마트 홈: BLE 기반 제어 장치 구축
- 임베디드 시스템: RTOS 활용 로봇 제어 및 게이트웨이 장치
const int LED_PIN = 23;
void setup() {
pinMode(LED_PIN, OUTPUT);
}
void loop() {
digitalWrite(LED_PIN, HIGH);
delay(1000);
digitalWrite(LED_PIN, LOW);
delay(1000);
}
const int LED_PIN = 23;
int brightness = 0;
int fadeAmount = 5;
void setup() {
pinMode(LED_PIN, OUTPUT);
}
void loop() {
analogWrite(LED_PIN, brightness);
brightness += fadeAmount;
if (brightness <= 0 || brightness >= 255) {
fadeAmount = -fadeAmount;
}
delay(30);
}
const int POT_PIN = 34;
void setup() {
Serial.begin(115200);
}
void loop() {
int adcValue = analogRead(POT_PIN);
float voltage = adcValue * (3.3 / 4095.0);
Serial.print("ADC: "); Serial.print(adcValue);
Serial.print(" Voltage: "); Serial.print(voltage, 2);
Serial.println(" V");
delay(500);
}
#include <Wire.h>
void setup() {
Serial.begin(115200);
Wire.begin(21, 22);
}
void loop() {
for (byte address = 1; address < 127; address++) {
Wire.beginTransmission(address);
if (Wire.endTransmission() == 0) {
Serial.print("Found I2C device at 0x");
Serial.println(address, HEX);
}
}
delay(2000);
}