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

Peripheral MCU configuration for Olimex ESP32-EVB (ESP32-GATEWAY) More...

Detailed Description

Peripheral MCU configuration for Olimex ESP32-EVB (ESP32-GATEWAY)

This configuration is for the Olimex ESP32-EVB, but can also be used for the Olimex ESP32-GATEWAY. To use this board definition with Olimex ESP32-GATEWAY, add

USEMODULE += olimex_esp32_gateway

to the makefile of the application to use the according default board configuration.

For detailed information about the configuration of ESP32 boards, see section Common Peripherals.

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

Definition in file periph_conf.h.

#include <stdint.h>
#include "periph_cpu.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

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.

#define ADC_GPIOS   { }
 Declaration of GPIOs that can be used as ADC channels.
 
#define DAC_GPIOS   { }
 Olimex ESP32-EVB has no GPIOs left that might be used as DAC channels.
 

CAN configuration

Olimex ESP32-EVB has a CAN interface including a CAN transceiver on board.

#define CAN_TX   GPIO5
 CAN TX transceiver signal.
 
#define CAN_RX   GPIO35
 CAN RX transceiver signal.
 

I2C configuration

Olimex ESP32-EVB/GATEWAY have one I2C interface I2C_DEV(0).

However, they use different GPIOs. Olimex ESP32-EVB, the interface is also available at the [UEXT] connector.

Note
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   GPIO16
 SCL signal of I2C_DEV(0)
 
#define I2C0_SDA   GPIO13
 SDA signal of I2C_DEV(0)
 

PWM channel configuration

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   { GPIO9, GPIO10 }
 In DOUT and DIO flash mode, GPIO9 and GIO10 are available and can be used as PWM channels with PWM_DEV(0).
 

SD/MMC host controller configuration

#define SDMMC_CONFIG_NUMOF   1
 Number of configured SDMMC devices.
 
static const sdmmc_conf_t sdmmc_config []
 SDMMC devices.
 

SPI configuration

#define SPI0_CTRL   HSPI
 HSPI is used as SPI_DEV(0)
 
#define SPI0_SCK   GPIO14
 SCK [UEXT] / SD card interface].
 
#define SPI0_MISO   GPIO2
 MISO [UEXT] / SD card interface].
 
#define SPI0_MOSI   GPIO15
 MOSI [UEXT] / SD Card interface].
 
#define SPI0_CS0   GPIO17
 CS0 [UEXT].
 

UART configuration

ESP32 provides 3 UART interfaces at maximum:

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

If the board definition is used for Olimex EVB-GATEWAY, the UART_DEV(1) interface is not available.

#define UART0_TXD   GPIO1
 direct I/O pin for UART_DEV(0), can't be changed
 
#define UART0_RXD   GPIO3
 direct I/O pin for UART_DEV(0), can't be changed
 
#define UART1_TXD   GPIO4
 UART_DEV(1) TxD.
 
#define UART1_RXD   GPIO36
 UART_DEV(1) RxD.
 

Macro Definition Documentation

◆ ADC_GPIOS

#define ADC_GPIOS   { }

Declaration of GPIOs that can be used 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 65 of file periph_conf.h.

◆ CAN_RX

#define CAN_RX   GPIO35

CAN RX transceiver signal.

Definition at line 82 of file periph_conf.h.

◆ CAN_TX

#define CAN_TX   GPIO5

CAN TX transceiver signal.

Definition at line 81 of file periph_conf.h.

◆ DAC_GPIOS

#define DAC_GPIOS   { }

Olimex ESP32-EVB has no GPIOs left that might be used as DAC channels.

Definition at line 71 of file periph_conf.h.

◆ I2C0_SCL

#define I2C0_SCL   GPIO16

SCL signal of I2C_DEV(0)

Definition at line 111 of file periph_conf.h.

◆ I2C0_SDA

#define I2C0_SDA   GPIO13

SDA signal of I2C_DEV(0)

Definition at line 114 of file periph_conf.h.

◆ I2C0_SPEED

#define I2C0_SPEED   I2C_SPEED_FAST

I2C bus speed of I2C_DEV(0)

Definition at line 99 of file periph_conf.h.

◆ PWM0_GPIOS

#define PWM0_GPIOS   { GPIO9, GPIO10 }

In DOUT and DIO flash mode, GPIO9 and GIO10 are available and can be used as PWM channels with PWM_DEV(0).

Definition at line 135 of file periph_conf.h.

◆ SDMMC_CONFIG_NUMOF

#define SDMMC_CONFIG_NUMOF   1

Number of configured SDMMC devices.

Definition at line 164 of file periph_conf.h.

◆ SPI0_CS0

#define SPI0_CS0   GPIO17

CS0 [UEXT].

Definition at line 199 of file periph_conf.h.

◆ SPI0_CTRL

#define SPI0_CTRL   HSPI

HSPI is used as SPI_DEV(0)

It is available at the [UEXT] connector on Olimex ESP32-EVB. If the SD Card/MMC interface is used, the SPI interface is not available.

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.

Definition at line 186 of file periph_conf.h.

◆ SPI0_MISO

#define SPI0_MISO   GPIO2

MISO [UEXT] / SD card interface].

Definition at line 193 of file periph_conf.h.

◆ SPI0_MOSI

#define SPI0_MOSI   GPIO15

MOSI [UEXT] / SD Card interface].

Definition at line 196 of file periph_conf.h.

◆ SPI0_SCK

#define SPI0_SCK   GPIO14

SCK [UEXT] / SD card interface].

Definition at line 190 of file periph_conf.h.

◆ UART0_RXD

#define UART0_RXD   GPIO3

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

Definition at line 221 of file periph_conf.h.

◆ UART0_TXD

#define UART0_TXD   GPIO1

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

Definition at line 220 of file periph_conf.h.

◆ UART1_RXD

#define UART1_RXD   GPIO36

UART_DEV(1) RxD.

Definition at line 229 of file periph_conf.h.

◆ UART1_TXD

#define UART1_TXD   GPIO4

UART_DEV(1) TxD.

Definition at line 226 of file periph_conf.h.

Variable Documentation

◆ sdmmc_config

const sdmmc_conf_t sdmmc_config[]
static
Initial value:
= {
{
.slot = SDMMC_SLOT_1,
.cd = GPIO_UNDEF,
.wp = GPIO_UNDEF,
.bus_width = 1,
},
}
#define GPIO_UNDEF
Definition of a fitting UNDEF value.
@ SDMMC_SLOT_1
SD/MMC host controller slot 1.
Definition periph_cpu.h:690

SDMMC devices.

Definition at line 150 of file periph_conf.h.