2

JTAG を使用して C コードを評価ボードにロードすると、正常にロードされます。ただし、main() からコードを実行すると、すぐに「CPU が停止していません」というエラーが発生し、続いて「APB-AP が見つかりません」というエラーが発生しました。

このエラーが発生する前に、USB 関連のコードを読み込んで実行することができました。

私はそれをグーグルで検索し、JTAG コマンド「rx 0」を使用してターゲットをリセットしましたが、何も変更されません。

ARM Cortex-M3 プロセッサ、J-Link ARM V4.14d、IAR Embedded ワークベンチ IDE を使用しています。

助けてくれてありがとう。

4

3 に答える 3

3

1 つの可能性:ウォッチドッグ

ハードウェアにウォッチドッグがある場合は、JTAG が CPU を停止したいときに CPU をリセットしないようにする必要があります。ウォッチドッグが CPU をリセットすると、通常、説明した「CPU が停止していない」タイプのエラーが発生します。

CPU に内部ウォッチドッグ回路がある場合、一部の CPU では、JTAG が CPU を停止すると自動的に「一時停止」します。しかし、他のものではそうはならず、JTAG デバッグを実行している間はウォッチドッグが無効になっていることを確認する必要があります。

回路に CPU の外部にあるウォッチドッグ回路がある場合は、通常、何らかの方法でそれを無効にする必要があります (通常、ハードウェア設計者は、そのためにボード上にある種のスイッチ/ジャンパーを提供します)。

于 2010-09-06T05:31:44.747 に答える
0

コードに次の行があることを確認してください。

WatchdogStallEnable(WATCHDOG0_BASE); // CPU 停止時にウォッチドッグを停止

于 2016-12-08T17:56:11.693 に答える
0

jtag ラインを gpio ラインとして再利用し、チップと通信する jtag の機能を壊していますか? 私はその方法でステラリスボードをブリックしました。

于 2010-09-30T21:46:37.437 に答える