Keil uVisionおよびULink2 / Ulink Proデバッガーを使用すると、デバッグポインターがmain()に到達しない - KBA229982 - Community Translated (JA)
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
Community Translated by NoTa_4591161 Version: **
Translation - English: Debug pointer does not reach main() when using Keil uVision and ULink2/Ulink Pro Debuggers - KBA2299...
質問:
Keil uVisionおよびULink2 / ULink Pro Debuggerを使用しているときに、デバッグポインターがmain()に到達しないのはなぜでしょうか?
回答:
PSoC 6プロジェクトをPSoC CreatorからKeil uVisionにエクスポートするために実行する必要がある手順は、次の場所にあります。
Help > PSoC Creator Help Topics > Integrating into 3rd Party IDEs > PSoC 6 Designs > Creating µVisio Projects for PSoC 6
上記の手順は、CM4プロジェクトで機能します。しかし、CM0+プロジェクトの場合、プロジェクトをKeil uVisionにエクスポートした後、図1 に示すようにデバイスを正常にプログラムできることがわかりますが、デバッグしようとすると、図2に示すようにデバッグポインターがmain() 関数に到達する前にスタックします。
図1. デバイスのプログラミングが成功
図2. デバッグポインターがmain()に到達しない
このシナリオは、CM0+コアのプロジェクトがKeil uVisionにエクスポートされ、VECTRESETオプションがULink2/Ulink Pro debugger reset modeとして選択されている場合に発生します。
回避策:
図3に示すようにOptions for TargetウィンドウのDebug タブの下にある[settings]をクリックします。
図3. [ Setting]ボタンをクリック
Target Driver Setupウィンドウでは図4のように選択VECTRESETの代わりにSYSRESETREQ選択します。VECTRESETモードは、デバッグプロセスが失敗するのでCortex-M0+ コアではサポートされていません。SYSRESETREQおよびVECTRESETの詳細については、このリンクをご参照してください。次に、OKをクリックします。
図4. リセットオプションとしてSYSRESETREQを選択
図5に示すように、デバッグポインターがmain()に到達するようになります。
図5. デバッグポインターがmain()に到達