いつもお世話になります。
現在アルファープロジェクト社製のMS104-SH4を使用してプログラムしており
開発環境はHEW 使用言語がC++になります。
現在プロジェクトを新規で作成してデバッガーXsSightEvoを使用して書き込んでデバッグしようとしたら
PowerON_Reset関数が呼ばれる前にManualResetに毎回入り、ResetHandlerから処理が始まり
またManulaResetが呼ばれるようになります。
調査すると、
・C言語でプロジェクトを作成した場合、正しくmain関数まで呼ばれる。
・C++言語プロジェクトを作成した場合のみ、上記事象が発生する。
・C++言語で、ManualResetが呼ばれる原因を見ると、一般例外(アドレスFF000024番地(EXPEVT)に20のエラーコードが設定)が発生している?と思われます。
(C言語のときはアドレスFF000024番地は0になっている。)
何かわかりましたらご教示お願いします。
10年近く前にMS104-SH4ではないけどSH7750を試したことがあります。起動させて汎用ポートのみ操作で終わってます。サンプルがあったので、大枠は自分で作成しておりません。HEWのワークスペースフォルダとハードウエアマニュアルが残っていたので、内容を見ると、 1.ハードウエア―マニュアル 2.6処理状態 (1)リセット状態 に "RESET 端子がローレベルに変わるとリセット状態になります。MRESET 端子がハイレベルのときパワーオンリセット状態になり、MRESET 端子がローレベルのときマニュアルリセット状態になります。" とあります。デバッガXsSightEvoは経験がなく、検索してもヒットしないのでよくわかりませんが、MRESET 端子をコントロールしていませんか?CとC++で設定を変えてませんか? 2.私の持つサンプルプログラムでは、PowerON_ResetからHardwareSetupやmainを呼び出してます。Manual_ResetからPowerON_Resetを呼び出してます。Manual_ResetとPowerON_Resetの処理内容は相互に呼び出しているようなことはありませんか?