MI_DmaRestart

構文

#include <nitro/mi.h>

void MI_DmaRestart( u32 ndmaNo );

引数

ndmaNo DMAチャンネル (0〜3)

返り値

なし。

説明

設定済みの DMA を開始します。

この関数は現在のDMAレジスタの設定で DMAを開始します。具体的には、dmaNo で指定する新規DMA のイネーブルビットを1にします。それ以外のDMAに関するレジスタは予め設定しておく必要があります。

予めDMAを設定するのは MI_DmaCopy*(), MI_DmaFill*(), MI_DmaClear*(), MI_DmaSend*(), MI_DmaRecv*(), MI_DmaPipe*() の、_SetUp をつけた関数で行います。詳細は各関数のリファレンスを参照してください。

元々一度DMA処理が終わったのち、必要なレジスタのみを設定して再び開始する、という使い方のために用意されました。この関数が "Restart" であるのはそのためです。

内部動作

IOレジスタのDMAレジスタを使用します。

参照

MI_DmaCopy*(), MI_DmaFill*(), MI_DmaClear*(), MI_DmaSend*(), MI_DmaRecv*(), MI_DmaPipe*()

履歴

2007/10/31 初版