Loading...
Searching...
No Matches
periph_conf.h File Reference

Peripheral configurations for ESP32-S3-DevKit boards. More...

Detailed Description

Peripheral configurations for ESP32-S3-DevKit boards.

The peripheral configurations in this file can be used for Espressif ESP32-S3-DevKitx boards that use one of the following modules:

  • ESP32-S3-WROOM-1x module (ESP32-S3-DevKitC-1 board)
  • ESP32-S3-WROOM-2x module (ESP32-S3-DevKitC-1 board)
  • ESP32-S3-MINI-1x module (ESP32-S3-DevKitM-1 board)

Any modifications required for specific applications can be overridden by application-specific board configuration.

For detailed information about the peripheral configuration for ESP32-S3 boards, see section Common Peripherals.

Note
Most definitions can be overridden by an application-specific board configuration if necessary.
Author
Gunar Schorcht gunar.nosp@m.@sch.nosp@m.orcht.nosp@m..net

Definition in file periph_conf.h.

#include <stdint.h>
#include "periph_conf_common.h"
+ Include dependency graph for periph_conf.h:

Go to the source code of this file.

ADC and DAC channel configuration

#define ADC_GPIOS   { GPIO1, GPIO2, GPIO4, GPIO5, GPIO6, GPIO7, GPIO8, GPIO9 }
 Declaration of GPIOs that can be used as ADC channels.
 

I2C configuration

For generic boards, only one I2C interface I2C_DEV(0) is defined.

The GPIOs listed in the configuration are only initialized as I2C signals when module periph_i2c is used. Otherwise they are not allocated and can be used for other purposes.

#define I2C0_SPEED   I2C_SPEED_FAST
 I2C bus speed of I2C_DEV(0)
 
#define I2C0_SCL   GPIO9
 SCL signal of I2C_DEV(0)
 
#define I2C0_SDA   GPIO8
 SDA signal of I2C_DEV(0)
 

PWM channel configuration

For generic boards, two PWM devices are configured.

These devices contain all GPIOs that are not defined as I2C, SPI or UART for this board. Generally, all outputs pins could be used as PWM channels.

Note
As long as the according PWM device is not initialized with the pwm_init, the GPIOs declared for this device can be used for other purposes.
#define PWM0_GPIOS   { GPIO14, GPIO17, GPIO18, GPIO21 }
 Declaration of the channels for device PWM_DEV(0), at maximum PWM_CHANNEL_NUM_DEV_MAX.
 
#define PWM1_GPIOS   { GPIO15, GPIO16 }
 Declaration of the channels for device PWM_DEV(1), at maximum PWM_CHANNEL_NUM_DEV_MAX.
 

SPI configuration

Note
The GPIOs listed in the configuration are first initialized as SPI signals when the corresponding SPI interface is used for the first time by either calling the spi_init_cs function or the spi_acquire function. That is, they are not allocated as SPI signals before and can be used for other purposes as long as the SPI interface is not used.
#define SPI0_CTRL   FSPI
 FSPI is used as SPI_DEV(0)
 
#define SPI0_SCK   GPIO12
 FSPI SCK (pin FSPICLK)
 
#define SPI0_MISO   GPIO13
 FSPI MISO (pin FSPIQ)
 
#define SPI0_MOSI   GPIO11
 FSPI MOSI (pin FSPID)
 
#define SPI0_CS0   GPIO10
 FSPI CS0 (pin FSPICS0)
 

UART configuration

ESP32-S3 provides 3 UART interfaces at maximum:

UART_DEV(0) uses fixed standard configuration.
UART_DEV(1) is not used.

#define UART0_TXD   GPIO43
 direct I/O pin for UART_DEV(0) TxD, can't be changed
 
#define UART0_RXD   GPIO44
 direct I/O pin for UART_DEV(0) RxD, can't be changed
 

Macro Definition Documentation

◆ ADC_GPIOS

#define ADC_GPIOS   { GPIO1, GPIO2, GPIO4, GPIO5, GPIO6, GPIO7, GPIO8, GPIO9 }

Declaration of GPIOs that can be used as ADC channels.

For generic boards, almost all ADC pins of ADC1 that are broken out are declared as ADC channels, except GPIO3, which is a strapping pin.

Note
As long as the GPIOs listed in ADC_GPIOS are not initialized as ADC channels with the adc_init function, they can be used for other purposes.

Definition at line 60 of file periph_conf.h.

◆ I2C0_SCL

#define I2C0_SCL   GPIO9

SCL signal of I2C_DEV(0)

Definition at line 79 of file periph_conf.h.

◆ I2C0_SDA

#define I2C0_SDA   GPIO8

SDA signal of I2C_DEV(0)

Definition at line 82 of file periph_conf.h.

◆ I2C0_SPEED

#define I2C0_SPEED   I2C_SPEED_FAST

I2C bus speed of I2C_DEV(0)

Definition at line 76 of file periph_conf.h.

◆ PWM0_GPIOS

#define PWM0_GPIOS   { GPIO14, GPIO17, GPIO18, GPIO21 }

Declaration of the channels for device PWM_DEV(0), at maximum PWM_CHANNEL_NUM_DEV_MAX.

Definition at line 105 of file periph_conf.h.

◆ PWM1_GPIOS

#define PWM1_GPIOS   { GPIO15, GPIO16 }

Declaration of the channels for device PWM_DEV(1), at maximum PWM_CHANNEL_NUM_DEV_MAX.

These PWM channels cannot be used if an external 32 kHz crystal is connected to the board at GPIO15 and GPIO16.

Definition at line 117 of file periph_conf.h.

◆ SPI0_CS0

#define SPI0_CS0   GPIO10

FSPI CS0 (pin FSPICS0)

Definition at line 146 of file periph_conf.h.

◆ SPI0_CTRL

#define SPI0_CTRL   FSPI

FSPI is used as SPI_DEV(0)

Definition at line 134 of file periph_conf.h.

◆ SPI0_MISO

#define SPI0_MISO   GPIO13

FSPI MISO (pin FSPIQ)

Definition at line 140 of file periph_conf.h.

◆ SPI0_MOSI

#define SPI0_MOSI   GPIO11

FSPI MOSI (pin FSPID)

Definition at line 143 of file periph_conf.h.

◆ SPI0_SCK

#define SPI0_SCK   GPIO12

FSPI SCK (pin FSPICLK)

Definition at line 137 of file periph_conf.h.

◆ UART0_RXD

#define UART0_RXD   GPIO44

direct I/O pin for UART_DEV(0) RxD, can't be changed

Definition at line 161 of file periph_conf.h.

◆ UART0_TXD

#define UART0_TXD   GPIO43

direct I/O pin for UART_DEV(0) TxD, can't be changed

Definition at line 160 of file periph_conf.h.