お世話になります。
RX66TのSCI11、DMA0、CMT3を使った調歩同期の送信を試しました。
CMT3のコンペアマッチ(ベクター番号31)でDMA0にリクエスト発生でSCI11.TDRへ1バイトのDMA0転送発生(外部端末にて確認済み)、ブレークポイントを設定することでDMA0転送終了割込み発生後にCMT3の割込みが発生を確認しました。
DMA0のDMAC起動要因フラグ制御レジスタ(DMCSL)には"0"を設定していますが、最後にCMT3割込みが発生します。できればCMT3の割込みは発生させたくないのですが、DMCSLで抑制できないものでしょうか?
以下に来ました。
#pragma interrupt (Excep_CMT3_CMI3(vect=31, enable))void Excep_CMT3_CMI3(void){return;}
のーしゃん さん、こんにちは。NoMaYです。#お久しぶりです。よくあるようなDMAによるSCI送信では無いのですね。一定時間毎にCPU負荷無しにRAM上のデータ1バイトを送信する用途でしょうか、、、> DMA0のDMAC起動要因フラグ制御レジスタ(DMCSL)には"0"を設定していますが、最後にCMT3割込みが発生します。> できればCMT3の割込みは発生させたくないのですが、DMCSLで抑制できないものでしょうか?これは、ひょっとして、総転送データ数のDMA転送が終了して、DTEビットが自動的に1→0に戻った後に発生したCMT割り込み、だったりしませんか?(つまり、DMA転送の最後なのでは無くて、DMA転送が終了した更にその後なのではありませんか?)