こんにちは、私は1MHz PWMの5パルスを生成したいので、PWMパルスの数を制御するためにPit_Ipを使用します:(1)ピットカウンター5usを開始し、Emios_PWMデューティを設定します(2)ピットが割り込みに当たったとき、エミオスを停止します。
しかし、実際のパルス数は5以上なので、私はプロジェクトを作成し、Pitがどれだけ速くPit割り込みできるかを把握するために、PitとSiul2とIntCtrlのみを含めます。
これがメインコードです(ピットの例とほぼ同じ、PTE12->LEDピン):
7us / 5us / 1usを試しましたが、制限は6.2usで、6.2usより速くすることはできません
では、割り込みを高速化する方法は?(ところで、私もemios_pwmの自己割り込みを試しましたが、正しい時間で割り込みもできません)
Hello @Vandarkholme,
eMIOS を使用すると、バッファ PWM モードで 5 番目の PWM 期間中に PWM 出力をディスエーブルできます。
63.5.3.18.9タイミングの例:アクティブ出力の無効化を参照してください。
デューティサイクルが50%の場合、FlexIOを使用して5パルスをシフトアウトできます(エミュレートされたSPIや1MHzのボーレートなど)。
BR, Daniel