2017-03-20 7 views
0

皮質M3を使用しているためarduino due 可能であれば誰もが知っているので、多くのパルスの後に自己を無効にするPWMチャネルを取得します。私が試してみたいものcortex_m3 nパルス後にPWMを無効にする

は、PWMの遅延を設定し、

PWMが開始され、各パルスの増分のためにどのように多くのサイクルを移動するには、この

割り込み1件の火災(タイマ0)のようなもの、 ですカウンターが限界に達するとカウンタは、PWMは、それ自体が無効になります

+0

freddieさん、ありがとうございました.2pwmの周波数を稼働させることができました。それぞれのカウンタはPWM_IER1レジスタをマスキングして、どのパルスが割り込みから来たのかを知ることができました。私は1つの割り込みと2つのソースだけでそれを理解できるとは思っていませんでしたが、最終的には2つのチャンネルがカウントエラーなしで各チャンネルで250kHzまで動くように効率的ですmHz)の有効な割り込みレート。これは約200:1の安全マージンで、私が望んでいたよりも30倍優れています –

答えて

0

ちょうど割り込みを追加無効イムカウントを行うPWM設定の外に他のループがあるに興味を持っていません/ PWMを実行するタイマーに(「比較」からの「更新」のいずれかから、結果が少し変わるので、あなたが好むものを選ぶ必要があります)、カウンタを増分してください。カウンタが目標値に達すると、割り込みからタイマを無効にするだけです。それだけです。