ホーム › フォーラム › Texas Instruments › マイコン › C2000 › 書込みについて
-
投稿者投稿
-
書込みについて
TMS320F28374Sに対してXDS110 DEBUG PROBEにてccs及びuniflash6.0.0から書込みを行おうとしているのですが、エラーとなってしまいます。
全て初めて使うツールということもあり原因の切り分けに苦慮しております。アドバイス頂ければ幸いです。
TMS320F28374Sが搭載されているボードはオリジナルです。
XDS110との接続はcTI20で接続。
接続確認として、マニュアル SPRACF0–May 2018 のP8 9項のTestConnectionを行った場合、Succeededとなりました。(ログ添付いたします。)
このことより、PC⇔XDS110⇔ボード(TMS320F28374S) までの接続は問題ないという判断でよろしいのでしょうか?
そうなるとccs及びuniflash6.0.0の設定間違いや書込みデータ(.out)の作成不備という判断になりますでしょうか?
以上よろしくお願いいたします。追記
空のプロジェクトを
File → New → ccs project → Empty project(with main.c)
作成し、RunからLoadしましたが、やはりエラーとなります。
エラーログ添付します。- このトピックは4 年、 1 ヶ月前に zen135 さんが編集しました。理由: 追記
Attachments:
お問い合わせありがとうございます。
添付を拝見させていただきましたが、”Error -1135″は様々な要因で出力されるエラーとなります。
過去にはUSBケーブルを変えることで問題が改善されたことも御座いました。今回Test Connectionは成功しているとのことですので、通信は確立できているように思いますが、USBケーブルの影響で通信が安定していない可能性がございますので、USBケーブルを変更して書き込みができるかご確認いただけますでしょうか。上記でも改善しない場合には、書き込みしようとしているプロジェクトのPropertiesの以下の画面をお送りいただけますでしょうか。プロジェクトを右クリックからPropertiesで表示可能です。
また、念の為以下の点についても確認させていただけますでしょうか。
・ 書き込みは、マニュアル SPRACF0–May 2018 のP9 10項の手順で実施されているとの認識でよろしいでしょうか。
・ 同デバイスのTI社の評価ボードなどはお持ちでしょうか。以上、宜しくお願い致します。
ご回答ありがとうございます。
USBケーブルの交換は効果なしでした。
色々と調査すると下記現象が掴めてきました。
各JTAG端子をオシロでプローブしてみると、TRSTをプローブした際はエラーがなく終了しました。
ノイズやデバッガのドライブ能力による影響かと推測し、TRSTの2.2kΩプルダウンを4.7kΩに変更するとエラーが出なくなりました。
ひとまずこれで現状は回避できていそうです。
ちなみにJTAGの周波数を変更することは可能でしょうか?
ノイズによる影響であればその辺りの変更も効いてくるかと思ってます。ご要望の画面添付いたします。
Attachments:
ご連絡ありがとうございます。エラーが解消されたとのことで安心いたしました。JTAGの周波数については以下の方法で変更可能となりますので、こちらを参考ください。
- CCS:Target Configuration File(.ccxmlファイル)を開き、“Texas Instruments XDS110 USB Debug Probe_0”をクリックする。
- Connection Properties:The JTAG TCLK Frequency(MHz)の選択ボックスから“Fixed with user specified value”を選択する。
- –Enter a value from 100.0KHz to 5.5MHz:任意のクロックスピード(100KHz~5.5MHz)を設定する。
以上、宜しくお願い致します。
同一カテゴリなので追加でご質問がございます。
デバッガを接続しての動作は現状安定して動作しているのですが、デバッガを外しての評価がうまくできません。
(かなり初歩的なことだとおもいますが。。。)
おそらく内部Flashに書き込めてないという状況です。
手順としては、ccsのRun → Loadから.outを書き込んでおります。
uniflashからも試しましたが、エラーなく書込み処理は終ってそうなのですが、電源OFF/ONしてverifyするとエラーになります。
なにか設定等が足りていないのかなと思ってます。
ご教授の程宜しくお願いいたします。お問い合わせありがとうございます。
FLASH書き込みについては以下のドキュメントのp.57のFlashの章をご参考いただけますでしょうか。TMS320C2000:Piccolo MCUのソフトウェア開発入門
http://www.tij.co.jp/jp/lit/an/jaja230a/jaja230a.pdf正常にFLASH書き込みができている状態で、TMS320F28374SのTRSTピン=Low、GPIO72=High, GPIO84=Highの状態でデバイスに電源を投入すると、FLASHに書き込みしたプログラムが動作致します。
また不明点が御座いましたらお問い合わせください。
以上、宜しくお願い致します。
返信ありがとうございます。
基板側の設定getmodeにする件承知いたしました。
ソフト側ですが、具体的にccsの設定はどのようにすればよいのでしょうか?
色々と設定により分岐があるようですが、行いたいことはシンプルでXDS110から内部FLASHに書き込み、FLASHからブートです。ソフト側は、FLASH用のリンカコマンドファイルを使用すると、CCSでプログラムロード時にFLASHにプログラムが書き込まれます。zen135様のプロジェクトは、FLASH用のリンカコマンドファイル「28374S_FLASH_lnk.cmd」を選択されていると思いますので、CCSでの設定は特に必要ございません。
以上、宜しくお願い致します。
何度もご回答いただきありがとうございます。
GetModeにして書き込むと、XRSが15msごとにアサートされるようになりました。
XRSには外部で2.2kΩで3.3Vにプルアップし、0.1uFのコンデンサを付けています。
OSCは10MHzです。
Watchdog Resetが動作しているような感じで、このResetのせいで再bootが何度も繰り返されているという理解でよろしいのでしょうか?> Watchdog Resetが動作しているような感じで、このResetのせいで
> 再bootが何度も繰り返されているという理解でよろしいのでしょうか?ご認識のとおりResetにより再ブートが繰り返されているものと考えます。
また、XRSが15msごとにアサートされているのでWatchdog Resetで間違いないと思います。
mainの先頭などでWatchdogを無効にして、プログラムが正常に起動するかお試しいただければと思いますご回答ありがとうございます。
mainの先頭に
WdRegs.SCSR.bit.WDOVERRIDE = 1;
WdRegs.WDCR.bit.WDDIS = 1;
を記載し、その後ろにGPIO初期化+whileでGPIOのトグルを入れて確認しましたが、
Flashからのブートは出来ていなさそうで、XRSのアサート現象変らずでした。また、別プロジェクトで同様に試したところ無事Flashからの起動が確認できました。
OKのプロジェクトではWatchdogのOFF(上記述の2行)を入れなくてもずっとIOがトグルしておりました。
となると、ダメな方のプロジェクトはmain()に来る前にWatchdogが動いている?
もしくはWatchdogとは違う要因?
でもデバッガ接続では動作する。度々申し訳ございませんが、ご見解頂けるとさいわいです。
ご連絡いただいた現象は、ブートROMのコードからmainへジャンプできていないために起きているようです。
現状では原因の特定ができないため、OKのプロジェクトと、NGのプロジェクトをそれぞれ添付いただくことはできますでしょうか。添付が難しい場合には、OKのプロジェクトと、NGのプロジェクトの差分をお教えいただきたく思います。以上、宜しくお願い致します。
ありがとうございます。
プロジェクトについてはエンドユーザー様の物になるので、添付は難しいです。
プロジェクトの差分についてです。
NGプロジェクトは元々LAUNCHXL-F28379D用に作られたプロジェクトをTMS320F28374Sに変更しております。
OKプロジェクトはNGプロジェクトから最低限評価のために機能(コード)を削減したプロジェクトになります。追加情報です。
Uniflashで双方のプログラムをWriteしVerifyいたしました。
(VerifyはWrite後電源OFFしデバッガを外して、電源ONし一度動作確認。その後、電源OFFしデバッガを接続して、電源ON後にVerify)
OKプロジェクト Write:OK 動作確認:OK Verify:OK
NGプロジェクト Write:OK 動作確認:NG Verify:NG
Verifyが通らないということはFlashに書き込めてないということになるのでしょうか?情報ありがとうございます。
Uniflashでプログラムをロードした後には自動でVerifyが取られますので、書き込みには失敗していないように見えます。プログラムロード後に、何らかの要因でFLASHのデータが書き換わっているように見えますので、Verifyエラーとなっているアドレスをご確認いただき、そのアドレスに対しデータを書き換えるようなプログラムが走っていないかご確認いただけますでしょうか。 -
投稿者投稿