lpcware

SPI with DMA

Discussion created by lpcware Employee on Jun 15, 2016
Content originally posted in LPCWare by jrdesign on Wed Jul 29 17:10:53 MST 2015
I'm working with the LPC824 and trying to improve the sustained throughput of the SPI. I can achieve a sustained rate of about 7 MBit when running the chip at 30 MHz. I'm doing a direct loop that does not use interupts and is only transmitting at the moment (RXIGNORE is true). I would like to set this up to use DMA and the ROM Api to get better throughput and some parallel processing. I am following the example in the User Manual (UM10800), chapter 28 - "SPI API ROM driver routines", using the example with DMA.
I figured out how to get the SPI set up and initialized (steps 1-4, but I'm stuck on setting up the DMA. Step 5 seems to be using a pointer to a DMA Driver routine in the ROM, but I cannot find that anywhere. I cannot find the declaration of the DMAD_API_T pointer, which I expect should be a struct similar to the one for the SPI (SPID_API_T).
Basically I cannot find any documentation on the DMA ROM driver. Anyone know where to look?

Outcomes