본문 바로가기

ESP32

ESP32-S3 DevKitC 핀아웃 레퍼런스 가이드: GPIO 설명

반응형

 

ESP32-S3 DevKitC 핀아웃 레퍼런스 가이드: GPIO 설명 

 

ESP32-S3 DevKitC는 ESP32-S3 칩이 탑재된 가장 인기 있는 개발 보드 중 하나입니다. 이 칩은 45개의 핀이 제공되며 ESP-WROOM-32 칩이 있는 보드와는 다른 핀아웃을 가지고 있습니다. 이 글에서는 ESP32-S3 DevkitC 보드 핀아웃을 살펴보고 해당 GPIO의 다양한 기능에 대해 설명합니다. 

 

본 문서의 원본과 많은 프로젝트를 보시려면 언제나 그렇듯이 이 링크를 따라가세요.

 

 

 

 

ESP32-S3 주변 장치: ESP32-S3 주변 장치에는

  • 20개의 아날로그-디지털 컨버터(ADC) 채널
  • 4개 SPI 인터페이스
  • 3개 UART 인터페이스
  • 2개 I2C 인터페이스
  • 8개 PWM 출력 채널
  • 2개 I2S 인터페이스
  • 14개의 정전 용량 감지 GPIO가 포함됩니다. 

 

ESP32 칩 멀티플렉싱 기능으로 인해 거의 모든 기능을 원하는 GPIO에 할당할 수 있습니다. 하지만 기본적으로 기능이 할당된 핀이 있습니다. 이 핀아웃에서 이에 대해 살펴보겠습니다.

 

ESP32-S3 DevKitC-1 핀아웃

 

다음 그림은 S3 칩을 사용하는 가장 인기 있는 개발 보드 중 하나인 ESP32-S3 DevKitC-1 보드의 핀아웃을 보여줍니다. 핀 배치가 약간 다른 동일한 보드의 여러 버전이 있습니다. 주변기기를 연결하기 전에 항상 핀 위치와 GPIO 라벨을 다시 확인하세요. 그림을 선택하면 확대합니다.

 

 

 

 

이 보드에 대한 자세한 내용은 여기에서 공식 문서를 확인하세요. 

 

 

SPI 플래시 및 PSRAM

 

GPIO 26~32는 통합 SPI 플래시 및 PSRAM에 연결되며 다른 용도로는 사용하지 않는 것이 좋습니다. 이 특정 보드에는 노출되어 있지 않지만 보드에 노출되어 있는 경우 사용을 피하십시오:

 

  • GPIO 26(플래시/PSRAM SPICS1)
  • GPIO 27(플래시/PSRAM SPIHD)
  • GPIO 28(플래시/PSRAM SPIWP)
  • GPIO 29(플래시/PSRAM SPICS0)
  • GPIO 30(플래시/PSRAM SPICLK)
  • GPIO 31(플래시/PSRAM SPIQ)
  • GPIO 32(플래시/PSRAM SPID). 

 

정전식 터치 GPIO

 

ESP32-S3에는 14개의 내부 정전식 터치 GPIO가 있습니다. 이는 사람의 피부처럼 전하를 보유하고 있는 모든 물체의 변화를 감지할 수 있습니다. 따라서 손가락으로 GPIO를 터치할 때 발생하는 변화를 감지할 수 있습니다. 이 핀은 정전식 패드에 쉽게 통합되어 기계식 버튼을 대체할 수 있습니다. 정전식 터치 핀은 ESP32를 최대 절전 모드에서 깨우는 데도 사용할 수 있습니다.

 

이러한 내부 터치 센서는 이러한 GPIO에 연결됩니다: 

 

  • T1 (GPIO 1)
  • T2 (GPIO 2)
  • T3 (GPIO 3)
  • T4 (GPIO 4)
  • T5 (GPIO 5)
  • T6 (GPIO 6)
  • T7 (GPIO 7)
  • T8 (GPIO 8)
  • T9 (GPIO 9)
  • T10 (GPIO 10)
  • T11 (GPIO 11)
  • T12 (GPIO 12)
  • T13 (GPIO 13)
  • T14 (GPIO 14)

 

아날로그-디지털 컨버터(ADC)

 

ESP32에는 20x 12비트 ADC 입력 채널이 있습니다. 다음은 ADC와 각 채널로 사용할 수 있는 GPIO입니다: 

 

  • ADC1_CH0 (GPIO 1)
  • ADC1_CH1 (GPIO 2)
  • ADC1_CH2 (GPIO 3)
  • ADC1_CH3 (GPIO 4)
  • ADC1_CH4 (GPIO 5)
  • ADC1_CH5 (GPIO 6)
  • ADC1_CH6 (GPIO 7)
  • ADC1_CH7 (GPIO 8)
  • ADC1_CH8 (GPIO 9)
  • ADC1_CH9 (GPIO 10)
  • ADC2_CH0 (GPIO 11)
  • ADC2_CH1 (GPIO 12)
  • ADC2_CH2 (GPIO 13)
  • ADC2_CH3 (GPIO 14)
  • ADC2_CH4 (GPIO 15)
  • ADC2_CH5 (GPIO 16)
  • ADC2_CH6 (GPIO 17)
  • ADC2_CH7 (GPIO 18)
  • ADC2_CH8 (GPIO 19)
  • ADC2_CH9 (GPIO 20)

 

 

ADC 입력 채널의 분해능은 12비트입니다. 즉, 0~4095 범위의 아날로그 판독값을 얻을 수 있으며, 0은 0V, 4095~3.3V에 해당합니다. 코드와 ADC 범위에서 채널의 분해능을 설정할 수도 있습니다.

 

RTC GPIO

 

ESP32-S3에는 RTC GPIO가 지원됩니다. RTC 저전력 서브시스템으로 라우팅되는 GPIO는 ESP32가 최대 절전 모드일 때 사용할 수 있습니다. 이러한 RTC GPIO는 ULP(초저전력) 코프로세서가 실행 중일 때 ESP32를 최대 절전 모드에서 깨우는 데 사용할 수 있습니다. 다음 GPIO를 외부 절전 해제 소스로 사용할 수 있습니다. 

 

  • RTC_GPIO0 (GPIO0)
  • RTC_GPIO1 (GPIO1)
  • RTC_GPIO2 (GPIO2)
  • RTC_GPIO3 (GPIO3)
  • RTC_GPIO4 (GPIO4)
  • RTC_GPIO5 (GPIO5)
  • RTC_GPIO6 (GPIO6)
  • RTC_GPIO7 (GPIO7)
  • RTC_GPIO8 (GPIO8)
  • RTC_GPIO9 (GPIO9)
  • RTC_GPIO10 (GPIO10)
  • RTC_GPIO11 (GPIO11)
  • RTC_GPIO12 (GPIO12)
  • RTC_GPIO13 (GPIO13)
  • RTC_GPIO14 (GPIO14)
  • RTC_GPIO15 (GPIO15)
  • RTC_GPIO16 (GPIO16)
  • RTC_GPIO17 (GPIO17)
  • RTC_GPIO18 (GPIO18)
  • RTC_GPIO19 (GPIO19)
  • RTC_GPIO20 (GPIO20)
  • RTC_GPIO21 (GPIO21)

 

PWM

 

ESP32-S3에는 다양한 속성을 가진 PWM 신호를 생성하도록 구성할 수 있는 8개의 PWM 채널이 있는 LED PWM 컨트롤러가 있습니다. 출력으로 작동할 수 있는 모든 핀을 PWM 핀으로 사용할 수 있습니다.

 

PWM 신호를 설정하려면 코드에서

  • 신호의 주파수,
  • 듀티 사이클,
  • PWM 채널(선택 사항),
  • 신호를 출력할 GPIO 등의 파라미터를 정의해야 합니다.

 

I2C

 

ESP32-S3을 Arduino IDE와 함께 사용하는 경우, ESP32 I2C 기본 핀은

  • GPIO 8 (SDA)
  • GPIO 9 (SCL)

 

SPI

 

ESP32는 4개의 SPI 주변 장치를 통합하고 있습니다: SPI0, SPI1, SPI2(일반적으로 HSPI라고 함), SPI3(일반적으로 VSPI라고 함)입니다.

 

SP0과 SP1은 내부적으로 내장 플래시 메모리와 통신하는 데 사용되며 다른 작업에는 사용해서는 안 됩니다.

 

HSPI와 VSPI는 다른 장치와 통신하는 데 사용할 수 있습니다. HSPI와 VSPI에는 독립적인 버스 신호가 있습니다. 

 

SPI MOSI MISO CLK CS
HSPI (SPI 2) GPIO 35 GPIO 13 GPIO 12 GPIO 10
VSPI (SPI 3) GPIO 35 GPIO 37 GPIO 36 GPIO 39

 

 

인터럽트

 

모든 GPIO를 인터럽트로 구성할 수 있습니다.

 

UART 핀 - 직렬 통신

 

ESP32-S3는 다양한 장치와의 직렬 통신을 허용하는 여러 UART(범용 비동기식 수신기-송신기) 인터페이스를 지원합니다. ESP32는 최대 3개의 UART 인터페이스를 지원합니다:

 

사용 중인 ESP32 보드 모델에 따라 UART0, UART1 및 UART2입니다. I2C 및 SPI와 마찬가지로 이러한 UART는 대부분의 보드 모델에 기본 핀 할당이 있지만 모든 GPIO 핀에 매핑할 수 있습니다.

 

다음 표는 ESP32-S3의 기본 UART0, UART1 및 UART2 RX 및 TX 핀을 보여 줍니다: 

 

UART Port TX RX Remarks
UART0 GPIO 43 GPIO 44 Cannot be changed
UART1 GPIO 17 GPIO 18 Can be assigned to other GPIOs
UART2 Assign any pins of your choice

 

 

 

스트래핑 핀

 

ESP32-S3 칩에는 다음과 같은 스트래핑 핀이 있습니다:

 

  • GPIO 0
  • GPIO 3
  • GPIO 45
  • GPIO 46

 

이 핀은 ESP32를 부트로더 또는 플래싱 모드로 전환하는 데 사용됩니다. USB/직렬이 내장된 대부분의 개발 보드에서는 이러한 핀의 상태에 대해 걱정할 필요가 없습니다. 보드가 해당 핀을 플래싱 또는 부팅 모드에 적합한 상태로 설정합니다. 그러나 프로젝트에서 이 핀을 사용하지 않는 것이 좋습니다.

 

활성화(EN/RST)

 

활성화(EN/RST)는 3.3V 레귤레이터의 활성화 핀입니다. 풀업되어 있으므로 GND에 연결하면 3.3V 레귤레이터를 비활성화할 수 있습니다. 즉, 예를 들어 푸시 버튼에 연결된 이 핀을 사용하여 ESP32를 다시 시작할 수 있습니다.

 

마무리

 

ESP32-S3 GPIO에 대한 이 레퍼런스 가이드가 도움이 되셨기를 바랍니다. ESP32-S3 GPIO에 대한 추가 팁이 있으면 아래에 댓글을 작성하여 공유해 주세요. 더 많은 ESP32 콘텐츠:

 

Arduino IDE 전자책으로 ESP32 알아보기

무료 ESP32 프로젝트 및 자습서

 

 

읽어 주셔서 감사합니다. 배움을 멈추지 마세요.

 

반응형

더욱 좋은 정보를 제공하겠습니다.~ ^^