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

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

Detailed Description

Peripheral configurations for ESP32-C3-DevKit boards.

The peripheral configurations in this file are valid for Espressif ESP32-C3-DevKitx boards that use one of the following modules:

  • ESP32-C3-MINI-1x module (ESP32-C3-DevKitM-1 board)
  • ESP32-C3-WROOM-02x module (ESP32-C3-DevKitC-02 board)

Since the number of GPIOs and their possible uses on the ESP32-C3 are quite limited, these peripheral configurations can also be used for most other ESP32-C3 boards. Any modifications required for specific applications can be overridden by application-specific board configuration.

For detailed information about the peripheral configuration for ESP32-C3 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   { GPIO0, GPIO1, GPIO2, GPIO3, GPIO4, GPIO5 }
 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   GPIO4
 SCL signal of I2C_DEV(0)
 
#define I2C0_SDA   GPIO5
 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   { GPIO3, GPIO4 }
 Declaration of the channels for device PWM_DEV(0), 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   GPIO6
 FSPI SCK (pin FSPICLK)
 
#define SPI0_MISO   GPIO2
 FSPI MISO (pin FSPIQ)
 
#define SPI0_MOSI   GPIO7
 FSPI MOSI (pin FSPID)
 
#define SPI0_CS0   GPIO10
 FSPI CS0 (pin FSPICS0)
 

UART configuration

ESP32-C3 provides 2 UART interfaces at maximum:

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

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

Macro Definition Documentation

◆ ADC_GPIOS

#define ADC_GPIOS   { GPIO0, GPIO1, GPIO2, GPIO3, GPIO4, GPIO5 }

Declaration of GPIOs that can be used as ADC channels.

For generic boards, all ADC pins that have broken out are declared as ADC channels.

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 61 of file periph_conf.h.

◆ I2C0_SCL

#define I2C0_SCL   GPIO4

SCL signal of I2C_DEV(0)

Definition at line 80 of file periph_conf.h.

◆ I2C0_SDA

#define I2C0_SDA   GPIO5

SDA signal of I2C_DEV(0)

Definition at line 83 of file periph_conf.h.

◆ I2C0_SPEED

#define I2C0_SPEED   I2C_SPEED_FAST

I2C bus speed of I2C_DEV(0)

Definition at line 77 of file periph_conf.h.

◆ PWM0_GPIOS

#define PWM0_GPIOS   { GPIO3, GPIO4 }

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

Definition at line 106 of file periph_conf.h.

◆ SPI0_CS0

#define SPI0_CS0   GPIO10

FSPI CS0 (pin FSPICS0)

Definition at line 134 of file periph_conf.h.

◆ SPI0_CTRL

#define SPI0_CTRL   FSPI

FSPI is used as SPI_DEV(0)

Definition at line 122 of file periph_conf.h.

◆ SPI0_MISO

#define SPI0_MISO   GPIO2

FSPI MISO (pin FSPIQ)

Definition at line 128 of file periph_conf.h.

◆ SPI0_MOSI

#define SPI0_MOSI   GPIO7

FSPI MOSI (pin FSPID)

Definition at line 131 of file periph_conf.h.

◆ SPI0_SCK

#define SPI0_SCK   GPIO6

FSPI SCK (pin FSPICLK)

Definition at line 125 of file periph_conf.h.

◆ UART0_RXD

#define UART0_RXD   GPIO20

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

Definition at line 149 of file periph_conf.h.

◆ UART0_TXD

#define UART0_TXD   GPIO21

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

Definition at line 148 of file periph_conf.h.