Espressif Systems ESP32 Technical Reference Manual page 32

Hide thumbs Also See for ESP32:
Table of Contents

Advertisement

4.4 Direct I/O via IO_MUX
• Set the xx_FUN_DRV field to the desired value for output strength. The higher the value is, the higher
the output strength is. Pull up/down the pad by configuring xx_FUNC_WPU and xx_FUNC_WPD
registers in open drain mode.
Notes:
• The output signal from a single peripheral can be sent to multiple pads simultaneously.
• Only the first 34 GPIOs (0-33) can be used as outputs.
• The output signal can be inverted by setting the GPIO_FUNCx_OUT_INV_SEL bit.
In GPIO matrix
signal0_out
signal1_out
signal2_out
signal3_out
signal255_out
GPIO_OUT_DATA bit x
4.3.3 Simple GPIO Output
The GPIO Matrix can also be used for simple GPIO output - setting a bit in the GPIO_OUT_DATA register will
write to the corresponding GPIO pad.
To configure a pad as simple GPIO output, the GPIO Matrix GPIO_FUNCx_OUT_SEL register is configured with a
special peripheral index value (0x100).
4.4 Direct I/O via IO_MUX
4.4.1 Summary
Some high speed digital functions (Ethernet, SDIO, SPI, JTAG, UART) can bypass the GPIO Matrix for better high
frequency digital performance. In this case, the IO_MUX is used to connect these pads directly to the
peripheral.
Selecting this option is less flexible than using the GPIO Matrix, as the IO_MUX register for each GPIO pad can
only select from a limited number of functions. However, better high frequency digital performance will be
maintained.
Espressif Systems
GPIO_FUNCx_OUT_SEL
0
1
2
3
255
256
(0x100)
Figure 8: Output via GPIO Matrix
In IO MUX
GPIO X out
GPIOx_out
GPIOx_FUN_OE = 1
31
ESP32 Technical Reference Manual V1.0
4 IO_MUX AND GPIO MATRIX
GPIOx_MCU_SEL
0 (FUNC)
1 (FUNC)
I/O Pad X
2 (GPIO)

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ESP32 and is the answer not in the manual?

Questions and answers

Table of Contents

Save PDF