LPC55 DMA Active vs Busy

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

LPC55 DMA Active vs Busy

跳至解决方案
1,207 次查看
kbetts
Contributor III

What is the difference between "Active" and "Busy" in the DMA of the LPC55? The User Manual contains the following definitions:

"A DMA channel is considered active when a DMA operation has been started but not yet fully completed. The Active status will persist from a DMA operation being started, until the pipeline is empty after end of the last descriptor (when there is no reload)."

"A DMA channel is considered busy when there is any operation related to that channel in the DMA controller’s internal pipeline."

Both seem to indicate whether there are any operations for the channel in the DMA pipeline, so what is the difference?

标签 (1)
标记 (3)
0 项奖励
回复
1 解答
1,156 次查看
RaRo
NXP TechSupport
NXP TechSupport

Hello @kbetts,

The difference between them could be explain as follows: The Active status register will be active after the DMA configuration have been set and after submitting the DMA channel transfer request, and will continue to be active until the request has been completed; while the Busy status register will be active when the DMA starts the transfer and after doing a software or hardware trigger to enable the channel request.

Using the lpcxpresso55s69_dma_memory_to_memory example. You may find that after calling DMA_SubmitChannelRequest() which submits the DMA transfer request, the Active status register will be set; even before, to enable the channel request and do the software trigger which is called by DMA_StartTransfer().

Best regards, Raul.

在原帖中查看解决方案

0 项奖励
回复
1 回复
1,157 次查看
RaRo
NXP TechSupport
NXP TechSupport

Hello @kbetts,

The difference between them could be explain as follows: The Active status register will be active after the DMA configuration have been set and after submitting the DMA channel transfer request, and will continue to be active until the request has been completed; while the Busy status register will be active when the DMA starts the transfer and after doing a software or hardware trigger to enable the channel request.

Using the lpcxpresso55s69_dma_memory_to_memory example. You may find that after calling DMA_SubmitChannelRequest() which submits the DMA transfer request, the Active status register will be set; even before, to enable the channel request and do the software trigger which is called by DMA_StartTransfer().

Best regards, Raul.

0 项奖励
回复