Hi everyone,
There is something with ESP32 I/O Mux which is not clear for me.
Table 8. of the Datasheet details all different interface and signals (that's good). But I am a bit confused by the "Pin" column that specifies where those different signals are mapped, especially when it reads "Any GPIO Pins".
To me, the statement is then contradicted by the "A.4 IO_MUX" Table which details what specific functions is available on which physical pins.
I will give an example:
- I want to use a Standard SPI interface - so lets say HSPI* in this case, and the signal HSPICLK in particular.
- The "Any GPIO Pins" comment of Table 8. makes me think that I can map it on ANY GPIOs physical pin, provided that it is an output.
- But then looking an the I/O Mux Table, HSPICLK is only mapped on GPIO_14, as Function 2...
>>> What is the correct understanding?
Hope I was clear enough!
Thanks,
Mickael
I/O mux - "Any GPIO pins" comment
-
- Posts: 9708
- Joined: Thu Nov 26, 2015 4:08 am
Re: I/O mux - "Any GPIO pins" comment
The issue is that there are two ways of mapping pins: the GPIO mux and the IO_MUX. The GPIO mux allows you to map a peripheral to any pin, but it has the disadvantage that it introduces an APB clock (80MHz) tick delay in the signal; for some purposes this can be disadvantageous. Because of this, we also have the IO_MUX, which can map the signals of some peripherals to a very limited amount of IO pins; this reduces flexibility but because the IO_MUX does not have the delay, it can be useful for some purposes.
Who is online
Users browsing this forum: forrest and 98 guests