How to enable DMA on STM32F767zi?
Opened this issue · 0 comments
jc78 commented
I'm using an ST Nucleo 144 (STM32F767zi) and ILI9488 display and want to enable DMA for faster drawing.
The only way I can see DMA working is if STM32F1 is defined. defining that value doesn't seem to turn on DMA. I looked for all of the places in ILI9488.cpp where DMA could be used and forced it to use those functions, like SPI.dmaSend();, but I'm receiving compile errors stating that the SPI library doesn't have dmaSend:
.pio\libdeps\nucleo_f767zi\ILI9488_ID4667\ILI9488.cpp: In member function 'void ILI9488::drawImage(const uint8_t*, uint16_t, uint16_t, uint16_t, uint16_t)':
.pio\libdeps\nucleo_f767zi\ILI9488_ID4667\ILI9488.cpp:542:9: error: 'class SPIClass' has no member named 'dmaSend'
542 | SPI.dmaSend(linebuff, w*3);
Am I possibly using the wrong SPI library? or have I encountered an untested board\situation?
The library works for me without DMA, but of course I'd like DMA turned on for a better user experience.