ホーム フォーラム Texas Instruments 開発環境 Code Composer Studio デバッグ時、異常なアドレスの命令が実行される件

このトピックには2件の返信が含まれ、2人の参加者がいます。5 年、 11 ヶ月前 satoshi さんが最後の更新を行いました。

3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • 投稿者
    投稿
  • #4631 返信

    satoshi
    参加者

    デバッグ時、異常なアドレスの命令が実行される件

    デバイス型番:TMS320F280049C

    現在、弊社開発環境にてCCSv8, XDS110, TMS320F280049Cを使って開発を行っています。
    現象が発生する要因ははっきりしていないのですが、
    デバッグ実行時、main関数の最初で停止している状態からResumeボタンを押してプログラムを実行させると、
    0x3fb02bといった異常なアドレスの命令が実行されている時があります。

    おかしな命令をこちらが記述しているということも考えたのですが、
    この現象が発生する場合と発生しない場合があり、それらがこの現象と関係がなさそうな変数の初期値や
    周辺回路のレジスタなどの値を変更する、GPIOの出力を行う、などで解消したり発生したりしています。

    このような現象が発生している原因について心当たり等ございませんでしょうか。
    よろしくお願いいたします。

    Attachments:
    #4660 返信
    Yojiro
    Yojiro
    従業員

    0x3fb02b番地は、何らかの要因によりリセットが発生し、ブートロムのWAIT modeの処理が実行されている状態になります。TMS320F280049Cの環境では、CPU Resetなどによりリセットベクタから動作を開始すると、このWAIT modeの処理が実行されます。

    Watchdogが有効になっているためにリセットが発生する、/XRS信号が不安定でリセットが入力されるなど、CPUがリセットされる要因をご確認いただければと思います。

    参考までにC2000Wareに収録されているサンプルプログラムでも同様の問題が発生するかご確認いただけないでしょうか。
    また、現象が発生する評価ボードは、F280049CのLaunchpadでしょうか。

    ご確認のほど、よろしくお願いいたします。

    #4665 返信

    satoshi
    参加者

    本件は弊社で作成したマイコン搭載ボードで発生しています。
    F280049Cの評価キットも所有しているので確認をしてみます。

    デバッグ実行しない場合は正常にプログラムが動作するため、
    WatchdogやXRS信号は問題ない可能性が高いと考えています。
    (Watchdogはプログラムの初期化の部分で無効にしています。)
    XRS信号については電圧監視ICにてリセットを行うようにしているため、
    電源電圧の変動があればリセット入力が発生している可能性があります。

    本件の特徴としまして、プログラムのどこか一部を変更すると発生しなくなる、
    またプログラムの一部を変更すると発生するというところがあります。
    (変更箇所は実際には実行されないコードの場合もあり)

    とりあえず、確認をしてみます。
    よろしくお願いいたします。

3件の投稿を表示中 - 1 - 3件目 (全3件中)