How to prevent edma TCDn_CITER from auto reloading TCDn_BITER

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

How to prevent edma TCDn_CITER from auto reloading TCDn_BITER

ソリューションへジャンプ
965件の閲覧回数
huangjia
Contributor II

Hi dears, i want to send uart data by edma on s32k344. I called Uart_asyncSend() funciton in uart.c to send data, but it can only send one time in dma mode. I debuged the function code in single step mode, found TCDn_CITER had reloaded the value from TCDn_BITER after the first tranfer finish, then it returned a busy error.

So how to set the register to prevent TCDn_CITER from auto reloading TCDn_BITER?

Thanks.

0 件の賞賛
返信
1 解決策
955件の閲覧回数
davidtosenovjan
NXP TechSupport
NXP TechSupport

Could you show error status register?

Use DREQ bit if you don't want another transfer after end of major loop. Or check DLAST field in the TCD whether it does not point to some invalid address, if you want to trigger another major loop.

元の投稿で解決策を見る

0 件の賞賛
返信
1 返信
956件の閲覧回数
davidtosenovjan
NXP TechSupport
NXP TechSupport

Could you show error status register?

Use DREQ bit if you don't want another transfer after end of major loop. Or check DLAST field in the TCD whether it does not point to some invalid address, if you want to trigger another major loop.

0 件の賞賛
返信