ESP32C3: Is it possible to write from memory to GPIO with GDMA?

lilordag
Posts: 1
Joined: Thu Mar 02, 2023 5:14 pm

ESP32C3: Is it possible to write from memory to GPIO with GDMA?

Postby lilordag » Thu Mar 02, 2023 5:30 pm

Hello, I have 7x4 LED matrix connected directly to the GPIOs of an esp32c3. I was trying to offload the CPU and run them with the DMA. The idea was to read a uin32_t from the memory and write it to the GPIO_OUT_REG using DMA.
I thought it might be possible because GPIO_OUT_REG is within the peripheral address space, and as I understand, GDMA has access to it. However, I am not sure how to initialize and use GDMA for this purpose and I can't find any example.

Any help is welcome, thank you!

ESP_Sprite
Posts: 9746
Joined: Thu Nov 26, 2015 4:08 am

Re: ESP32C3: Is it possible to write from memory to GPIO with GDMA?

Postby ESP_Sprite » Fri Mar 03, 2023 2:20 am

Sorry, the ESP32 series of chips don't allow DMA'ing to random memory addresses. Other ESP32 chips have some sort of parallel IO you might be able to use (I2S, parlio, ...) but the C3 doesn't have that either. Best you could do is to perhaps use the quad mode of the SPI peripheral to get up to 4 lines, but if that's enough and you still need DMA, I suggest switching to the ESP32, ESP32-S2 or S3, or the C6.

Who is online

Users browsing this forum: No registered users and 64 guests