|
- static void _DMA_Copy(int LayerIndex, void * pSrc, void * pDst, int xSize, int ySize, int OffLineSrc, int OffLineDst)
- {
- U32 PixelFormat;
- /* Get the layer pixel format used */
- PixelFormat = _GetPixelformat(LayerIndex);
- /* Setup DMA2D Configuration */
- DMA2D->CR = 0x00000000UL | (1 << 9);
- DMA2D->FGMAR = (U32)pSrc;
- DMA2D->OMAR = (U32)pDst;
- DMA2D->FGOR = OffLineSrc;
- DMA2D->OOR = OffLineDst;
- DMA2D->FGPFCCR = PixelFormat;
- DMA2D->NLR = (U32)(xSize << 16) | (U16)ySize;
- /* Start the transfer, and enable the transfer complete IT */
- DMA2D->CR |= (1|DMA2D_IT_TC);
- /* Wait for the end of the transfer */
- while (DMA2D->CR & DMA2D_CR_START) {}
- }
复制代码 while (DMA2D->CR & DMA2D_CR_START) {} 这里面的等待时间跟什么有关呢?我测试了下H7大概等待18~31ms, GD32F450大概80ms, 还有空间来优化这个等待的时间吗?
|
|