After hours of try&error I found a good solution:
Set up the FSPI and GDMA by using the regular C functions:
ESP_ERROR_CHECK(spi_bus_initialize(SPI2_HOST, &buscfg, SPI_DMA_CH_AUTO));
ESP_ERROR_CHECK(spi_bus_add_device(SPI2_HOST, &devcfg, &spi));
Do a fake transmission to init all registers ...
Search found 5 matches
- Tue Nov 14, 2023 3:45 pm
- Forum: Hardware
- Topic: Fast Way to start a SPI transmission with DMA?
- Replies: 7
- Views: 4425
- Sun Nov 12, 2023 3:36 pm
- Forum: Hardware
- Topic: Fast Way to start a SPI transmission with DMA?
- Replies: 7
- Views: 4425
Re: Fast Way to start a SPI transmission with DMA?
Did you remember to de-reset and un-clockgate the peripheral first? If it's off, it won't do anything.
Found a hint in ok-home 's link:
REG_CLR_BIT(SYSTEM_PERIP_CLK_EN0_REG, SYSTEM_SPI2_CLK_EN);
REG_SET_BIT(SYSTEM_PERIP_CLK_EN0_REG, SYSTEM_SPI2_CLK_EN);
REG_SET_BIT(SYSTEM_PERIP_RST_EN0_REG ...
- Sun Nov 12, 2023 3:21 pm
- Forum: Hardware
- Topic: Fast Way to start a SPI transmission with DMA?
- Replies: 7
- Views: 4425
Re: Fast Way to start a SPI transmission with DMA?
Hello
maybe this will help you
https://github.com/ok-home/logic_analyzer/tree/master
include/logic_analyzer_hal.h
Gets samples into ESP32 buffer
logic_analyzer_config_t - capture configuration
start_logic_analyzer(logic_analyzer_config_t *config) - capture start
void (*logic_analyzer_cb_t)(uint8 ...
- Sun Nov 12, 2023 2:53 pm
- Forum: Hardware
- Topic: Fast Way to start a SPI transmission with DMA?
- Replies: 7
- Views: 4425
Re: Fast Way to start a SPI transmission with DMA?
Did you remember to de-reset and un-clockgate the peripheral first? If it's off, it won't do anything.
Thanks for the answer.
For the clockgate I did
REG_WRITE(SPI_CLK_GATE_REG(2), 7);
After you sayed "de-reset" i searched for a way to do this, found only this:
SPI_SOFT_RESET Software ...
- Sun Nov 12, 2023 8:13 am
- Forum: Hardware
- Topic: Fast Way to start a SPI transmission with DMA?
- Replies: 7
- Views: 4425
Fast Way to start a SPI transmission with DMA?
Hi,
I am new to the ESP32, but my first project already pushes this controller to its limits.
The goal is to capture a very uncommon video signal on the FSPI port, and re-transmit it as a VGA-signal.
The input signal have 3 wires: a combined SYNC signal and 2 Bit color (well, 4 shades of green ...
I am new to the ESP32, but my first project already pushes this controller to its limits.
The goal is to capture a very uncommon video signal on the FSPI port, and re-transmit it as a VGA-signal.
The input signal have 3 wires: a combined SYNC signal and 2 Bit color (well, 4 shades of green ...