MK64FN1M0VLQ12 を使用したデザインがあります。ボードの 1 つが異常な動作をしていますが、他のボードは正常です。
症状としては、SysTick タイマーが明らかに 25 倍速くカウントしているようです。オシロスコープを使用してすべてのクロックを測定したところ(ピン PTA6 に接続)、すべて正しい周波数でした。カウントが速すぎることの証拠は、OSA_TimeDelay() 呼び出しで指定した時間の 1/25 が返されることです。
クロックの構成:
EXTAL および XTAL 上の 6.49 MHz 水晶。
PLL は 118.98333 MHz の MCGOUTCLK を生成します。
コアクロック分周比は 1 です。
バスクロック分周比は 2 です。
FlexBus クロック分周器は 4 です。
フラッシュクロック分周比は 8 です。
OSCERCLK (6.49MHz の信号が 2 つの ADC に送られます。
デバッガー (IAR EWARM) を使用して、正常なボードと不良なボードの両方で SysTick 制御およびリロード レジスタを調べました。良いボードと悪いボードの両方で同じ値が表示されます。不良ボード上のすべては正常に動作していますが、MQX 時間遅延がすべて 25 倍短すぎます。
この「不良」ボードは、MCU が交換され、ジャンパー ワイヤがスーパー グルーを使用してボードに接着されるなど、数回にわたって修理されています。このスーパーグルーは JTAG コネクタの下とピンの周囲に塗布されました。MCU が電源投入時にこれらのピンをサンプリングし、インピーダンスがいくらか低いために MCU が文書化されていない動作モードに切り替わる可能性はありますか?リファレンスマニュアルでブートストラップピンに関する記述を検索しましたが、何も見つかりませんでした。
MCU を交換しても問題は解決しませんでした。適切な溶剤でスーパーグルーをすべて除去しても問題は解決しませんでした。
あらゆるご指摘をいただければ幸いです。
なぜこのようなことが起こったのか説明はありますか?現在、S32K344 で MCUBoot を実行しているときに、このクロック速度の問題 (25 倍速すぎる) が発生しています。
こんにちは、
これまでこの問題に遭遇したことはありません。
OSA_TimeDelay() 関数で設定した値はどうでしょうか?
そして、どうすれば予想通りより速く時間遅延を測定できるのか興味があります。
可能であれば、より詳細な情報を提供してもらえますか?ありがとう。
すてきな一日を、
馬慧
-----------------------------------------------------------------------------------------------------------------------
注: この投稿で質問が解決した場合は、「正解」ボタンをクリックしてください。ありがとう!
-----------------------------------------------------------------------------------------------------------------------