最近、i.MX RT1060 プロセッサ リファレンス マニュアル、Rev. 3、07/2021 の情報を考慮して、FlexPWM によって生成されたハードウェア トリガーを使用して取得シーケンスを実装するように ADC (iMXRT1062 - Teensy 4.1) をプログラミングしていました。
コミュニティによって確認され、マニュアルの次のバージョンで更新される可能性のある 2 つの問題に気づきました。
1 つ目は、XBAR1 でトリガーをルーティングするための構成を指します。マニュアルの 62 ページの表 4-5 - XBAR1 入力割り当てによると、トリガー信号 FlexPWM4_SM2_TRIG0 と FLEXPWM4_PWM2_OUT_TRIG1 は XBAR1_IN53 入力に関連付けられていますが、私のコードは XBAR1_IN54 入力を使用してのみ動作しました。コードはhttps://ernane-aac.github.io/Teensy-4.1--How-to-Configure-the-ADC-System/で入手できます。
2 番目の問題は、ユーザーがビット B2B = 0 を使用することを決定した場合の ADC_ETC_TRIG0_COUNTER レジスタのサンプル間隔構成に関係します。マニュアルでは、間隔遅延を次のように設定しています: Interval_delay = (SAMPLE_INTERVAL+1)*(PRE_DIVIDER+1)*ipg_clk。SO、アプリケーションのニーズを満たす SAMPLE_INTERVAL と PRE_DIVIDER のさまざまな組み合わせが存在します。このCASE、PRE_DIVIDER=0 を考慮すると、SAMPLE_INTERVAL は 271 以上である必要がありますが、コードは PRE_DIVIDER=0 では機能しませんでした。PRE_DIVIDER=1、SAMPLE_INTERVAL=136 に変更すると、コードは動作します。このコードは PRE_DIVIDER=1 以上の組み合わせでは機能しますが、PRE_DIVIDER=0 では機能しないことに注意してください。マニュアルに記載されているこれらのビットの機能に関する単なる説明を超えた何かがあるようです。コードはhttps://ernane-aac.github.io/Teensy-4.1--How-to-Configure-the-ADC-System/で紹介されているものと同じです。B2B (コメント) からサンプル間隔 (サンプル間隔と事前分割定義のコメント解除) に変更するだけです。
異なる結果になった場合はお知らせください。
こんにちは@Ernane 、
弊社の製品にご興味をお持ちいただき、またコミュニティをご利用いただき誠にありがとうございます。