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

Peripheral MCU configuration for Heltec WiFi LoRa 32 V2 board. More...

Detailed Description

Peripheral MCU configuration for Heltec WiFi LoRa 32 V2 board.

Heltec WiFi LoRa 32 V2 is an ESP32 development board with 8 MB Flash that uses the EPS32 chip directly. It integrates a SemTech SX1276 or SX1278 for LoRaWAN communication in the 433 MHz or the 868/915 MHz band, respectively. Additionally, it has an OLED display connected via I2C on board.

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_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
 Declaration of GPIOs that can be used as ADC channels.
 
#define DAC_GPIOS   { }
 Declaration of GPIOs that can be used as DAC channels.
 

I2C configuration

Only I2C interface I2C_DEV(0) is used.

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   GPIO15
 SCL signal of I2C_DEV(0) [UEXT1].
 
#define I2C0_SDA   GPIO4
 SDA signal of I2C_DEV(0) [UEXT1].
 

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   { GPIO25, GPIO0, GPIO2, GPIO17 }
 PWM channels for device PWM_DEV(0)
 
#define PWM1_GPIOS   { GPIO22, GPIO23 }
 PWM_DEV(1) is not used.
 

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   VSPI
 VSPI is used as SPI_DEV(0)
 
#define SPI0_SCK   GPIO5
 VSPI SCK.
 
#define SPI0_MISO   GPIO19
 VSPI MISO.
 
#define SPI0_MOSI   GPIO27
 VSPI MOSI.
 
#define SPI0_CS0   GPIO18
 VSPI CS0.
 

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.

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

Macro Definition Documentation

◆ ADC_GPIOS

#define ADC_GPIOS
Value:
{ GPIO36, GPIO39, GPIO37, GPIO38, \
GPIO0, GPIO2, GPIO12, GPIO13, GPIO4, GPIO15 }

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

◆ DAC_GPIOS

#define DAC_GPIOS   { }

Declaration of GPIOs that can be used as DAC channels.

Note
As long as the GPIOs listed in DAC_GPIOS are not initialized as DAC channels with the dac_init function, they can be used for other purposes.

Since all DAC GPIOs are used for board control functions, there are no GPIOs left that can be used as DAC channels.

Definition at line 67 of file periph_conf.h.

◆ I2C0_SCL

#define I2C0_SCL   GPIO15

SCL signal of I2C_DEV(0) [UEXT1].

Definition at line 86 of file periph_conf.h.

◆ I2C0_SDA

#define I2C0_SDA   GPIO4

SDA signal of I2C_DEV(0) [UEXT1].

Definition at line 89 of file periph_conf.h.

◆ I2C0_SPEED

#define I2C0_SPEED   I2C_SPEED_FAST

I2C bus speed of I2C_DEV(0)

Definition at line 83 of file periph_conf.h.

◆ PWM0_GPIOS

#define PWM0_GPIOS   { GPIO25, GPIO0, GPIO2, GPIO17 }

PWM channels for device PWM_DEV(0)

Definition at line 104 of file periph_conf.h.

◆ PWM1_GPIOS

#define PWM1_GPIOS   { GPIO22, GPIO23 }

PWM_DEV(1) is not used.

Definition at line 109 of file periph_conf.h.

◆ SPI0_CS0

#define SPI0_CS0   GPIO18

VSPI CS0.

Definition at line 137 of file periph_conf.h.

◆ SPI0_CTRL

#define SPI0_CTRL   VSPI

VSPI is used as SPI_DEV(0)

Definition at line 125 of file periph_conf.h.

◆ SPI0_MISO

#define SPI0_MISO   GPIO19

VSPI MISO.

Definition at line 131 of file periph_conf.h.

◆ SPI0_MOSI

#define SPI0_MOSI   GPIO27

VSPI MOSI.

Definition at line 134 of file periph_conf.h.

◆ SPI0_SCK

#define SPI0_SCK   GPIO5

VSPI SCK.

Definition at line 128 of file periph_conf.h.

◆ UART0_RXD

#define UART0_RXD   GPIO3

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

Definition at line 153 of file periph_conf.h.

◆ UART0_TXD

#define UART0_TXD   GPIO1

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

Definition at line 152 of file periph_conf.h.

◆ UART1_RXD

#define UART1_RXD   GPIO9

direct I/O pin for UART_DEV(1) RxD

Definition at line 160 of file periph_conf.h.

◆ UART1_TXD

#define UART1_TXD   GPIO10

direct I/O pin for UART_DEV(1) TxD

Definition at line 157 of file periph_conf.h.