• 検索結果がありません。

はチャネル 3 と 4 を組み合わせて使用

ドキュメント内 スライド 1 (ページ 44-58)

MTUA.TSTR.BIT.CST0 = 1;

ユニット 0 はチャネル 3 と 4 を組み合わせて使用

デッドタイムの設定

カウント値

相補PWMモードの出力

時間

 ユニット 0 はチャネル 3 と 4 を組み合わせて使用

正相用のカウンタ 逆相用のカウンタ

カウント値

電圧 正相の出力 デューティ比の設定×3

→ 3相の相補PWM出力が可能

プログラムサンプル(3) 相補PWMモード仕様

■相補PWMモードのプログラム例

キャリア周期が400μsで、デューティ比が10%から90%の間を10%刻みで変化する 相補PWM信号を出力します。

仕様

・動作モード 相補PWMモード

・クロックソース PCLK[48MHz]

・カウントスタート ソフトウェアスタート

・割り込み 山の割り込み

・キャリア周期 400μsec

・デッドタイム 4μsec

・出力端子 MTIOC4B-B、MTIOC4D-B端子

・出力アクティブ アクティブロー

プログラム・フローチャート

リセットスタート

スタートアップルーチン

main

init_MTU_PWM

相補PWMモード3に設定

init_MTU_Excep MTUの例外処理の設定

start_MTU

MTUのカウンタを起動 setpsw_i(組み込み関数)

割り込み許可 初期化

カウント開始

TGIA3割り込み関数 (Excep_MTU3_TGIA3)

RTE

デューティ比の変更

PWM出力

相補PWMモードの初期化のフロー

端子の設定

カウンタクロックの選択 カウンタの初期値の設定

キャリア周期の設定 デューティ比の設定

初期化終了 相補PWMモード設定

バッファ動作の設定 波形出力の許可 初期化開始

モジュールストップ解除

デッドタイムの設定

A

A

インプットキャプチャの サンプルと同じ

相補PWMモードの出力端子

正相

逆相

正相 逆相 正相 逆相

ポートファンクションレジスタC(PFCMTU)

PWM出力端子1(正、逆)

PWM出力端子2(正、逆)

PWM出力端子3(正、逆)

カウンタクロックの選択とカウント値の設定

ビット  

のカウンタの初期値

チャネル 4 = 0 < 16

【正相】

ビット  

定値 バッファレジスタの設

周期データレジスタ、 9600 16

2 ] s [ ] 400 MHz [

8

4 × µ = <

=

正相のキャリア周期(半周期分のカウント値)

ビット  

のカウンタの初期値

チャネル 3 = 48 [ MHz ] × 4 [ µ s ] = 192 < 16

【逆相】

ビット  

の設定値 のジェネラルレジスタ

チャネル 3 A, C = 9600 + 192 = 9792 < 16

【共通】

デューティ比

ビット の設定値

のジェネラルレジスタ

チャネル 4 B, D = 9600 × 10 [%] = 960 < 16

時間 カウント値

逆のキャリア周期(半周期分のカウント値)

タイマコントロールレジスタ(TCR)

同じ値を設定する

正相 逆相

リセット後は設定不要

タイマカウンタ(TCNT)

チャネル4のカウンタの初期値=0 チャネル3のカウンタの初期値=192

逆相

正相

相補PWMモードのバッファ動作

S/W で設定

コンペアレジスタ バッファレジスタ

自動的に転送

テンポラリレジスタ

タイマ周期データレジスタ(TCDR)とタイマ周期バッファレジスタ(TCBR)

正相のキャリア周期設定用のカウント値=9600

正相のキャリア周期

タイマジェネラルレジスタ(TGR)

PWM出力端子1の

デューティ比

PWM出力端子3の

デューティ比

PWM出力端子2の

デューティ比

逆相のキャリア周期

逆相のキャリア周期設定用のカウント値=9600+192

デューティ比設定用のカウント値 = 960

タイマデッドタイムデータレジスタ(TDDR)

デッドタイムのカウント値=192

キャリア周期の設定

相補PWMモードの初期化関数 ~デッドタイムの設定まで~

// Set PWM mode 3

MTU3.TMDR.BIT.MD = 0xf;

// Buffer is enabled

ドキュメント内 スライド 1 (ページ 44-58)

関連したドキュメント