Debugで書き込んでもReleaseで書き込まれている?

こんにちは.

現在RX621(R5F5621_100PIN8BDFP)で開発を行っております.

現在,作成したプログラムをオンチップデバッグしているのですが

以前できていたデバッグ(ブレークポイントの設定など)ができなくなってしまいましたので,少し質問をさせてください.

Targetを Debug_RX_E1_E20_SYSTEMとしてビルドすると

Phase OptLinker starting
Software license problem:
Duration of Trial License of UNKNOWN is exhausted. (37)
Maximum link size limited to 128KB code+data.
Phase OptLinker finished

Phase RX Configurator starting
Nothing to do - skipping
Phase RX Configurator finished

Build Finished
0 Errors, 35 Warnings

とBuild Statusに表示され,ダウンロードエラーが出ていないのでコンパイル→ダウンロードまでがうまくいっているものだと解釈しております.

ですが,ビルド後にRESET GOをすると

The command is not executable because the MCU is in the reset state.
The command is not executable because the user program is running.

とDebug Statusに表示され,以前行っていたステップインデバッグやブレークポイントの設定などが

できない状態となっています.

E1エミュレータを接続解除してハードウェアの電源を入れると,ソースの変更が反映された挙動をしていることから,もしやReleaseで書き込まれているのではと疑っております.

現在使用しているハードウェアで以前Debugができていたことから,HEWの設定の問題かと疑っています.

以前,オンチップデバッグを繰り返していくうちにHEWがソースをコンパイルをしていない(デバッグ時にアセンブラを見ると変更が反映されていなかった)という症状があり,一度Clean All Projectを行ったら解決したということがありました.その後数回オンチップデバッグができていた後,このような症状が出ている,という状態になります.

断片的な情報のみで申し訳ないのですが

このようにDebug設定でダウンロードしているのにReleaseで書き込まれているような症状を体験された方はいらっしゃいませんでしょうか?

もしくは,なにか原因が思い当たる方がいらっしゃいましたら,ぜひご教示いただければと思います.

Parents Reply Children
  • fujitaさま

    ご回答ありがとうございます.

    Build Statusで「The total section size exceeded the limit」のようなメッセージが出てきていないため

    HEWのコンパイル容量制限内だと思っておりました...

    ありがとうございます.

  • ビルドは成功しているはずですよ。

    128KB制限を超えると、「The total section size exceeded the limit」が出て、

    Build stopped - Fatal Error

    とリンクエラーになります。

    ---

    The command is not executable because the MCU is in the reset state.

    The command is not executable because the user program is running.

    が出ているという事なので、

    デバッグのために、resetしようとしても、MCUが反応しないという症状に見えます。

    E1とMCUの接続あたりから疑った方が良い感じがします。

    もしくは、E1で使用している端子を、MCU側で別機能に割り当てていて干渉しているとかが考えられます。

    また推測ですが、HEW側でターゲットのリセット方式を指定する設定があるかもしれません。

    (ARM Cortex-Mでは、デバッグ時のMCUリセット方式の設定がいくつかあり、類似の設定があるかもしれません)

    ---

    確認ですが、デバッグ開始時にソースもしくはアセンブラが表示されず、エラーが表示されるという事で良いですか?

    (要するにデバッグセッションがまともに開始できないという問題かどうかという確認です)

  • Higetakaさま

    ご回答ありがとうございます.

    デバッグのためにresetしようとしてもMCUが反応していない,という事について存じておりませんでした.

    すると,これはHEWやMCUの問題,というよりはMCU含めた配線や接続,端子の設定などに注目したほうが

    よさそうに思えてきました.

    ありがとうございます.

  • Higetakaさま

    デバッグ開始時,通常ですとソースが表示され,メインファイル内の関数の頭に黄色いラインが現れます.

    しかし,問題のデバイスでデバッグしますとこのようなものが表示されず,「Reset Go」をすると以下のところでプログラムが止まります.

    Disassembly Address   Obj Code     Disassemble

    00000000           FF                  ???

    その後に「Free Go」や「Go」をするとDebug Statusに

     The command is not executable because the user program is running

    となり,ソースコード欄の表示は一切変化しません.

  • デバッグの設定でターゲットに「RX600 Simulator」を選択したらどんなもんですか?

  • Fujita Nozomuさま

    SimSessionRX600で書き込んだところ,書き込み終わった後は普通にスタート,リセットおよびブレークポイントも置くことができました.

  • 先ほどHWあたりを見渡し,GNDの取り方で修正をしてみたところ

    接続エラーやブレークポイントが置けないなどの問題が無事解決されました.

    ご回答いただきました皆様に感謝いたします.

    おそらく,Higetakaさまのおっしゃるようにリセットができない状態だったのかと思われます.

    ありがとうございました.