YS電子工作ラボ

<V.3版>
DMAモジュール
外部端子への転送

(→プロジェクトファイル(Harmony Ver.3版 MHC v3.8.0) ダウンロード)



DMAモジュールを使うことにより、CPUの介在なしてメモリと外部ポート間や周辺モジュール間とのデータ転送が可能です。
 以下に DMA転送によりメモリから外部ポートに直接データを転送してLEDを点滅する例を紹介します。

<仕様>
 ・ メモリから外部端子にDMA転送によりデータを転送する。

 ・ 転送される外部端子は RG15、RD4、RA15、RA14とし端子にはLEDを接続する。
 ・ 各ポートは 転送データが"1"の場合LEDを点灯し、データが"0"の場合はLEDを消灯する。
 ・ DMA転送のトリガはタイマ2で開始されること。
 ・ タイマ2の繰り返しサイクルは100 msecのこと。
 ・ DMA転送元のデータ転送は、完了後 これを繰り返すこと。


<回路図>( → PDFファイル




<外観>  PIC32MZ評価ボード(→購入方法)を使った実験品の外観です。





<動作結果> (→ 動画:1080pのHD動画を見ることができます。)

1. LED表示

転送
データ 
① ON: RG15,RD4,RA15,RA14
LED_pattern0[0]= 0x80(=0b10000000)
LED_pattern1[0]= 0x10(=0b00010000)
LED_pattern2[0]= 0xD0(=0b11000000)
②ON: なし
LED_pattern0[1]= 0x00
LED_pattern1[1]= 0x00
LED_pattern2[1]= 0x00
③ON: RG15
LED_pattern0[3]= 0x80(=0b10000000)
LED_pattern1[3]= 0x00
LED_pattern2[3]= 0x00
LED
表示
 
転送
データ
④ON: RD4
LED_pattern0[4]= 0x00
LED_pattern1[4]= 0x10(=0b00010000)
LED_pattern2[4]= 0x00
⑤ON: RA15
LED_pattern0[5]= 0x00
LED_pattern1[5]= 0x00
LED_pattern2[5]= 0x80(=0b10000000)
⑥ON: RA14
LED_pattern0[6]= 0x00
LED_pattern1[6]= 0x00
LED_pattern2[6]= 0x40(=0b01000000)
LED
表示


2. RG15ピンの出力電圧波形

 RG15ピン 出力電圧波形
200mse /div
1.0v/div








<解説> プロジェクトファイル精読願います。