PSoC 3およびPSoC 5でのDMAレジスタのデバッグ - KBA226876- Community Translated (JA)

Version 2

    Community Translated by  NoTa_4591161         Version: **

     

    質問:

    PSoC®3およびPSoC 5DMA転送が進行中の場合、DMAチャネルの中間値(転送カウントなど)を表示するにはどうすればよいですか?

     

    回答:

    DMAチャネル番号がxで、TDの保持が有効になっている場合、PHUB_TDMEMx_ORIG_TD0DMACのプライベート使用のために予約されます。したがって、TD実行されているとき、チャネル番号を含むPHUB_TDMEMレジスタはデータを一時的に保持します。オリジナルのTD処理する代わりに、DMACはオリジナルのTDをこの別の作業領域にコピーして処理します

     

    たとえば、DMAチャネルのチャネル番号が0で、TDの保持が有効になっている場合、レジスタのワーキングセットはPHUB_TDMEM0_ORIG_TD0になります。PHUB_TDMEM0_ORIG_TD0レジスタのxfrcnt [11:0]が中間値を保持します。したがって、この値(xfrcnt-> [11:0])を読み取ると、中間のカウントが得られます。DMAチャネルのチャネル番号は、ビルドが成功した後、PSoC Creatorcydwrタブから確認できます。