What is VSPICS0?
Posted: Wed Dec 22, 2021 7:49 pm
Or HSPICS0 for that matter?
What is the difference between VSPI, HSPI, GP-SPI2, GP-SPI3 ?
Where is any of this documentation consistent?
I am trying to support a WROVER device, and the doc "esp32-wrover-e_esp32-wrover-ie_datasheet_en" shows that internally there is one or two SPI buses and two CS lines connect to SPIFLASH and SPIPSRAM. I can't tell because the data lines are connected, but the clock lines are separate.
They are controlled by SPICS0 and SPICS1 (figure 2). Okay, that's fine...
They also use SPIDI and SPIDO, I assume what the rest of us call MISO and MOSI as data in and data out.
I also assume that these SPI CS lines are not available externally, since they are tied to internal RAM.
The above are assumptions, since I cannot find anything in "esp32-wrover-e_esp32-wrover-ie_datasheet_en".
The document "esp32-wrover-b_datasheet_en" has one sentence that says go read "esp32_datasheet_en"... which the SPI which has one tiny paragraph (4.1.17)
But the document "esp32_datasheet_en" says there are 3 SPI: SPI, VSPI, HSPI. So that FLASH/RAM is only one SPI module? With two clocks and two CS lines? And there are two OTHER SPI modules.... what do the H and V prefixes mean?
Furthermore, this data sheet seems to describe another device, not a "WROVER" anyway, since the pin count and packaging information doesn't match. But I can find no such similar document for the WROVER.
And I am also consulting
"esp32-s2_technical_reference_manual_en" because there does not appear to be anything named
"esp32-wrover_technical_reference_manual_en"
There is no mention of VSPI or HSPI in there. They are GP-SPI2 and GP_SPI3. It does say that SPI0 and SPI1 are internal, and GP-SPI2, GP-SPI3 are available. Yet, this is more than 3 SPIs described in the "esp32_datasheet_en"
So if the "esp32-s2_technical_reference_manual_en" and "esp32_datasheet_en" documents are NOT for a WROVER, where do I find this level of detail for the WROVER? No such document is appearing in any search.
Back to "esp32-wrover-e_esp32-wrover-ie_datasheet_en", table 3 has things that are NOT explained anywhere I can find.
There are VSPIxxx and HSPIxxx signals. And they use VSPICS0 and HSPICS0.
What is "VSPIHD" in the table, like "SPIHD" in figure 2 (HD as in HighDef signal? I doubt that...). Also VSPIQ, HSPIQ, etc...
I've been spending days trying to make sense of pieces from four different documents and put them together like a puzzle because no one document seems to have all the information.
And the API reference doesn't explain what VSPI or HSPI is. Just that I can't use SPI0 or SPI1. And has a lot of other unexplained stuff
("Set DMA chan to SPI_DMA_DISABLED if only the SPI flash uses this bus". ??? The FLASH is on SPI0... which can't used used??? HUH?)
Any, and I do mean ANY, advice that can straighten this out would be appreciated.
What is the difference between VSPI, HSPI, GP-SPI2, GP-SPI3 ?
Where is any of this documentation consistent?
I am trying to support a WROVER device, and the doc "esp32-wrover-e_esp32-wrover-ie_datasheet_en" shows that internally there is one or two SPI buses and two CS lines connect to SPIFLASH and SPIPSRAM. I can't tell because the data lines are connected, but the clock lines are separate.
They are controlled by SPICS0 and SPICS1 (figure 2). Okay, that's fine...
They also use SPIDI and SPIDO, I assume what the rest of us call MISO and MOSI as data in and data out.
I also assume that these SPI CS lines are not available externally, since they are tied to internal RAM.
The above are assumptions, since I cannot find anything in "esp32-wrover-e_esp32-wrover-ie_datasheet_en".
The document "esp32-wrover-b_datasheet_en" has one sentence that says go read "esp32_datasheet_en"... which the SPI which has one tiny paragraph (4.1.17)
But the document "esp32_datasheet_en" says there are 3 SPI: SPI, VSPI, HSPI. So that FLASH/RAM is only one SPI module? With two clocks and two CS lines? And there are two OTHER SPI modules.... what do the H and V prefixes mean?
Furthermore, this data sheet seems to describe another device, not a "WROVER" anyway, since the pin count and packaging information doesn't match. But I can find no such similar document for the WROVER.
And I am also consulting
"esp32-s2_technical_reference_manual_en" because there does not appear to be anything named
"esp32-wrover_technical_reference_manual_en"
There is no mention of VSPI or HSPI in there. They are GP-SPI2 and GP_SPI3. It does say that SPI0 and SPI1 are internal, and GP-SPI2, GP-SPI3 are available. Yet, this is more than 3 SPIs described in the "esp32_datasheet_en"
So if the "esp32-s2_technical_reference_manual_en" and "esp32_datasheet_en" documents are NOT for a WROVER, where do I find this level of detail for the WROVER? No such document is appearing in any search.
Back to "esp32-wrover-e_esp32-wrover-ie_datasheet_en", table 3 has things that are NOT explained anywhere I can find.
There are VSPIxxx and HSPIxxx signals. And they use VSPICS0 and HSPICS0.
What is "VSPIHD" in the table, like "SPIHD" in figure 2 (HD as in HighDef signal? I doubt that...). Also VSPIQ, HSPIQ, etc...
I've been spending days trying to make sense of pieces from four different documents and put them together like a puzzle because no one document seems to have all the information.
And the API reference doesn't explain what VSPI or HSPI is. Just that I can't use SPI0 or SPI1. And has a lot of other unexplained stuff
("Set DMA chan to SPI_DMA_DISABLED if only the SPI flash uses this bus". ??? The FLASH is on SPI0... which can't used used??? HUH?)
Any, and I do mean ANY, advice that can straighten this out would be appreciated.