私はこの役立つガイドに従いました: MCUXpresso IDEでのITMとUART印刷。最初は、SWO ITMコンソールに何も表示されなかったので、動作していないと思っていました。すぐに、SWOはデバッグ中に一時停止することに気づきました。出力結果を見るには、再開(F8)ボタンを押さなければならない。これはイライラします。なぜなら、コードをステップで進めている間にログプリントをリアルタイムで確認できないからです。この制限をどうやって解決すればいいですか?
こんにちは、 @kaosad さん。
ITM/SWOでは、データは走行中の目標物によって生成および送信されます。ブレークポイントやシングルステップに達すると、Cortex-Mコアが停止し、アプリケーションは実行を停止し、新しいprintf() / ITM_SendChar()呼び出しは発生しません。その結果、SWO ITMコンソールはMCUが稼働中のみ新しいメッセージを受け取ります。
再開ボタンを押すとターゲットが再び実行され、ITMハードウェアはSWO上でリアルタイムでトレースデータをストリーミングできます。MCUXpressoのSWOメカニズムは、実行を中断せずに実行中のMCUからイベント情報をキャプチャするよう設計されています。
BR
ハリー