eDMA channel idle

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

eDMA channel idle

430 次查看
martindusek
Contributor V

Hi,

how to check whether a dma channel is free to execute new DMA request? I thought about using ACTIVE and DONE bits of CSR register, but it seems they are not suitable for that.

Checking DONE == 1 works only when there was previous DMA transaction (it doesn't work if the DMA channel hasn't been used yet).

And ACTIVE is set to 0 on minor loop completition. I want something that tells me all major loops (whole tranaction) has been completed.

Thanks for help.

标签 (1)
0 项奖励
2 回复数

332 次查看
mjbcswitzerland
Specialist V

Hi

You could do a single dummy transfer during system initialisation in order to prepare the DONE bit and then use it as flag during subsequent operations.

Regards

Mark

0 项奖励

332 次查看
martindusek
Contributor V

Hi Mark,

thanks. I'll do it If this is the only possibility...

0 项奖励