今回はTexas Instruments 製のマイコン(LAUNCHXLまたはLaunchPad)を使用しているときに起きるエラーの原因と解決方法を載せておきます。
今回のエラー発生状況とその内容
エラーが発生した状況から説明してみます。
今回はC2000ware のサンプルソフトをCode Composer Studio(以下CCS)にインポートし、コードを自分用にカスタマイズしていました。
サンプルソフトは「base_program」に名前を変更し、LaunchPadをパソコンに接続して書き込もうとしたところ、以下のようなエラーが発生しました。
エラーを直訳すると、
”Texas Instruments XDS100v2 USB Debug Probe/C28xx_CPU1 : ターゲットはプログラムをロードする前に接続する必要があります。”
となります。
つまりマイコンが接続されていないので書き込めません、というエラーです。
エラー発生原因
エラー発生原因は、 CCSプロジェクトの名前を変更したこと です。
再現性があるので原因といって間違いがないとと思います。(他にもいくつか理由はあるかもしれません。)
エラー内容はマイコンが接続されていないことでしたが、マイコンはちゃんと接続されています。(ハードエラーではないです。)
一番最初にマイコンボードにプログラムを書き込む際、targetConfigを設定してマイコン、デバッグプローブなどを選択したとも思います。
ところがプロジェクトの名前を変更した場合、この紐づけが解除されてしまうようです。
解決方法
まずはプロジェクトファイルの上で右クリックし、「Properties」を開きます。
すると以下のような「Properties for プロジェクト名」というウィンドウが出てきます。
ここで真ん中らへんにある「Manage the project's target-configuration aoutomatically」にチェックを入れます。
「Apply and Close」ボタンをクリックしたら設定は完了です。
あとはデバッグを再度行ったらOK
設定は以上で完了です。
サンプルプロジェクトをインポートしている場合、ターゲットのマイコンが勝手に変わっていることもあるっぽい(自分の場合はなぜか違うマイコンに変更されていた...)ので、ここもチェックしておいた方がよいと思います。
まとめ
CCSにおいて”Target must be connected before loading program”と表示された場合の解決方法は以上です。
CCSだとコードのミスの箇所じゃなくて全然違う場所がエラーを返したりするので確認しずらいことがあるのでたまにウーン。。。ってなる。
まぁでもネット民がたくさん共有してくれているので大丈夫なことが多いのかもしれない。
多少でも参考になれば幸いです。
それでは。