ホーム › フォーラム › Texas Instruments › マイコン › C2000 › TMS320F28379Dのセットアップ(LAUNCHXL)
このトピックには4件の返信が含まれ、2人の参加者がいます。5 年、 1 ヶ月前に RDIW さんが最後の更新を行いました。
-
投稿者投稿
-
TMS320F28379Dのセットアップ(LAUNCHXL)
ローンチパッドLAUNCHXL-F28379Dのエミュレータ周りの回路を複製し
TMS320F28379Dを搭載したボードを作成しました。(パッケージはBGA(ZWTT)からQFP(PTPT)に変更)
EEPROMやUSBモジュールは元の回路と同じ93LC56BT-I/OTおよびFT2232HQ-REELを使用しています。EEPROMにはローンチパッドから読みだした.eptファイルをそのまま書き込み
Emulation BootモードでLAUNCHXL標準のデモプログラムの書き込みを行ったところ、
書き込みは完了しますが、実行すると-No source available for “0x3fe493” -とエラーが表示されます。
Disassemblyで”0x3fe493″は7625 ESTOP0と表示されています。上記の手順における不備や現状の問題についての解決方法についてアドバイスいただければ幸いです。
Attachments:
RDIWさん
CCSの画像を確認する限り、エミュレータ周りの回路は正常に動作しており、CPUなどハードウェアは正常に動作しているように思われます。
現象といたしましては、ITRAP割り込みが発生し、BootROMのITRAPハンドラで停止しています。
ITRAP割り込みは、未定義命令の実行や、コード0xFFFF(ITRAP命令)の実行、メモリからの応答なし(マッピングされていないアドレスへのアクセス)により発生いたします。
BootROMは、アプリケーションプロジェクトの範囲外ですので、ソースコードの情報がありませんので、”No source available for…”というエラーがソースコード画面に表示されます。
ESTOP0は、デバッグ用のコードで、デバッガ使用時はソフトウェアブレークポイントとして動作し、デバッガ未使用時は”NOP”として動作する命令になります。詳細な状況を確認させていただきたく、以下の点をご確認いただけないでしょうか。
- CCSで実行しようとしているプログラムは、ローンチパッドで動作していたものでしょうか。
また、貴社作成基板で動作させるに当たり、ローンチパッドで動作していたものから変更はございませんでしょうか。 - 「書き込みは完了しますが、実行すると」とありますが、書き込み終了後は一度main関数の先頭が表示され、実行(Resume)を行うと、ITRAPハンドラのESTOP0にて停止するのでしょうか。
- プログラムが正常に書き込まれているか確認いただけますでしょうか。
デフォルトの書き込み設定では、簡易的なVerification(1セクションあたり1word)となっております。
「Run」メニュー→”Load”→”Verify Program…”を実行していただきますと、ロードしたオブジェクトと比較され、結果がConsole画面に表示されます。
成功時の表示例)
C28xx_CPU1: Program verification successful for C:\…\CPU1_Flash\Example_28379D_LaunchPad.out
失敗時の表示例)
C28xx_CPU1: File Loader: Verification failed: Values at address 0x80001@Program do not match Please verify target memory and memory map. - 書き込み後の実行の手順ですが、(書き込み後、ソースコード画面にmain関数の先頭が表示される場合ですが)
1.「Scripts」メニュー→”EMU Boot Mode Select”から”EMU_BOOT_FLASH”を選択
2.「CPU Reset」
3.「Resume」
でしょうか。それとも、3.「Resume」のまえに「Restart」ボタンはクリック頂いておりますでしょうか。
”EMU Boot Mode Select”で”EMU_BOOT_SARAM”を選択されて、「Restart」ボタンをクリックしない場合は、ITRAPハンドラのESTOP0で停止いたします。
ご確認のほど、よろしくお願いいたします。
- この返信は5 年、 2 ヶ月前に Yojiro さんが編集しました。
ご回答ありがとうございます。
>•CCSで実行しようとしているプログラムは、ローンチパッドで動作していたものでしょうか。
大変申し訳ありませんでした。製品の出荷時にプリインストールされているプログラムであり、
CCSから同じ設定で書き込んだところ、ローンチパッドでも同じ現象となりました。>•「書き込みは完了しますが、実行すると」とありますが、書き込み終了後は一度main関数の先頭が表示され~。
その通りです。>•プログラムが正常に書き込まれているか確認いただけますでしょうか。
verification successful となりました。>•書き込み後の実行の手順ですが、(書き込み後、ソースコード画面にmain関数の先頭が表示される場合ですが)
いずれの場合も試してみましたが同様の結果となりました。また、Project PropertyよりConfigrationをFlashからRAMに変更したところ、動作しました。
本件については、ハードウェアの問題でないことが分かったので既に解決済みとして頂ければと存じますが、
もしも上記の回答から予想の付く原因があれば、後学のためにご教示ください。以上よろしくお願いいたします。
RDIWさん
FLASHへの書き込みは正常にできておりますので、ハードウェアは正常に動作しています。
ConfigurationをFLASHに設定されている場合、一部関数をRAMで実行いたします。この関数はInitSysCtrl()でFLASHからRAMへコピーされます。
現象を拝見いたしますと、このコピー処理が正しく行われていないために、RAMに配置される関数を呼び出した際に、RAMにはプログラムが存在しない(おそらく、コード0x0000と思われます)ために未定義命令違反が発生しているものと推測いたします。現在ご確認いただいておりますサンプルプロジェクトは、C2000ware/controlSUITEのどちらからインポートされておりますでしょうか。
C2000向けのソフトウェアパッケージですが、現在最新版はC2000wareにて提供させていただいております。
controlSUITEパッケージのサンプルでは、バージョン15.9.0以降のコンパイラに対応できておらず、上記RAMへのコピー処理が正しく動作しないことがございます。開発環境といたしましては、基本的に最新バージョンをお使いいただくことをお薦めしております。
・統合開発環境:CCS 最新版:v9.1
・ソフトウェアパッケージ: C2000ware(最新版はv2.00.00.02)上記環境にてご確認いただけないでしょうか。
よろしくお願いいたします。
ご回答ありがとうございます。
おっしゃる通りcontrolSUITEのサンプルを参照していた様です。
CCSおよびc2000wareを最新にして確認したところ、正常に動作いたしました。お忙しい所ご対応いただき誠にありがとうございました。
-
投稿者投稿