ホーム › フォーラム › Texas Instruments › マイコン › C2000 › F280049のBootConfigについて
このトピックには4件の返信が含まれ、2人の参加者がいます。3 年、 9 ヶ月前に Ge さんが最後の更新を行いました。
-
投稿者投稿
-
F280049のBootConfigについて
デバイス型番:F280049お世話になります。
F280049マイコンのBoot Mode Select Pinを、下記のそれぞれのパターンに変更したいと思っています。
(A)デフォルトから別のピンに変更
(B)ピンを使用しない設定に変更(Flash Boot)つきましては、いくつか質問がございます。
(1)
Bの場合、nTRSTによらず(デバッグプローブの接続によらず)Flash Bootしか
出来なくなるのでしょうか。すなわち、エミュレーションはできなくなるのでしょうか。(2)
BootModeSelectPinの変更は、OTP領域への不可逆な書き込みを伴うかと存じます。
Emulation BootにてEMU-BOOTPIN-CONFIG設定を使用することで
OTPへの書き込みの前に動作チェックをできると伺ったのですが
詳しい方法についてご教示願えますでしょうか。(3)
OTP領域への書き込みに、CCSからTools > On-Chip Flashと進むと
GUIが立ち上がると伺ったのですが、そもそもメニューにToolsタブがありません。
CCSのバージョンはVersion: 10.2.0.00009 です。【参考にした資料】
「How to Maximize GPIO Usage in C2000™ Devices」
https://www.ti.com/lit/an/spracp6/spracp6.pdf?ts=1611636371109&ref_url=https%253A%252F%252Fwww.google.com%252F
「TMS320C2000:Piccolo MCUのソフトウェア開発入門」
https://www.tij.co.jp/jp/lit/an/jaja230a/jaja230a.pdfお問い合わせありがとうございます。ご質問の件、以下に回答します。
(1)
Bの場合、nTRSTによらず(デバッグプローブの接続によらず)Flash Bootしか
出来なくなるのでしょうか。すなわち、エミュレーションはできなくなるのでしょうか。デバイス起動時はデバッガーの有無を見るためにnTRSTを必ずチェックしますので、ブートピンを使用しない設定に変更した場合でも、エミュレーションは可能となります。
参照資料:F28004x Microcontroller Workshop Manual
(P.59) Reset – Bootloader(2)
BootModeSelectPinの変更は、OTP領域への不可逆な書き込みを伴うかと存じます。
Emulation BootにてEMU-BOOTPIN-CONFIG設定を使用することで
OTPへの書き込みの前に動作チェックをできると伺ったのですが
詳しい方法についてご教示願えますでしょうか。ブートのフローについては、以下の図がわかりやすいと思います。
参照資料:F28004x Microcontroller Workshop Manual
(P.60) Emulation Boot ModeEMU-BOOTPIN-CONFIGは0xD00番地にありますので、CCSでデバイス接続後、View → Memory Blowserからメモリウィンドを開き、0xD00番地を表示させます。そして、この0xD00番地に32bitのEMU-BOOTPIN-CONFIG値を入力し、CCSでReset → Runと実行すると、エミュレーションブートの動作を確認できます。
「(B)ピンを使用しない設定」で動作させたい場合には、0xD00番地に0x5AFFFFFFを格納します。ブートの詳細についてはテクニカルリファレンスマニュアルの「ROM Code and Peripheral Booting」の項も併せてご参考ください。
TMS320F28004x Microcontrollers Technical Reference Manual
(3)
OTP領域への書き込みに、CCSからTools > On-Chip Flashと進むと
GUIが立ち上がると伺ったのですが、そもそもメニューにToolsタブがありません。
CCSのバージョンはVersion: 10.2.0.00009 です。Toolsタブはデバッグパースペクティブの画面に表示されるメニューとなります。
また、On-Chip FlashはCCSでデバイス接続しなければ使用できませんので、
添付の資料「On Chip Flash.pdf」を参考にお試しいただけますでしょうか。以上、よろしくお願いいたします。
Attachments:
ご回答ありがとうございます。
ブートの仕組みについて非常にわかりやすい資料をありがとうございます。
また、On-Chip Flashツールについても確認できました。EMU-BOOTによるテストについて、
文中のReset > Run とは、CPU Reset > Resume ということでしょうか。
BMSPはすべて無効, Flashブートに設定するために、
0xD00番に0x5AFFFFFFを、0xD04番に0xFFFFFF03を設定したのですが、
上記動作の後はESTOP0位置にて停止し、特に何も起きません。また、同様の(B)のゼロピン、Flashブート設定時でOTP領域へ書き込む際は、
Z1-OTP-BOOTPIN-CONFIG(Z1OTP-GPREG1)(0x7800C):0x5AFFFF
Z1-OTP-BOOTDEF-LOW(Z1OTP-GPREG3)(0x7801C):0xFFFF03
Z1-OTP-BOOTDEF-HIGH(Z1OTP-BOOTCTRL)(0x7801E):0xFFFFFF(書き込み無し)と設定するつもりですが間違いないでしょうか。
以上ご確認のほどよろしくお願いします。
Attachments:
ご連絡ありがとうございます。
EMU-BOOTによるテストについて、
文中のReset > Run とは、CPU Reset > Resume ということでしょうか。ご認識のとおりです。CPU Reset > Resumeになります。
BMSPはすべて無効, Flashブートに設定するために、
0xD00番に0x5AFFFFFFを、0xD04番に0xFFFFFF03を設定したのですが、
上記動作の後はESTOP0位置にて停止し、特に何も起きません。設定はご連絡いただいた設定で問題ございませんが、添付いただいたメモリウィンドウの値を見ると、上位16bitと下位16bitの値が逆になっているようです。以下の図のように、”32-Bit Hex – TI Style”でメモリを表示させて、再度0xD00番に0x5AFFFFFFを、0xD04番に0xFFFFFF03を設定いただけますでしょうか。
また、同様の(B)のゼロピン、Flashブート設定時でOTP領域へ書き込む際は、
Z1-OTP-BOOTPIN-CONFIG(Z1OTP-GPREG1)(0x7800C):0x5AFFFF
Z1-OTP-BOOTDEF-LOW(Z1OTP-GPREG3)(0x7801C):0xFFFF03
Z1-OTP-BOOTDEF-HIGH(Z1OTP-BOOTCTRL)(0x7801E):0xFFFFFF(書き込み無し)と設定するつもりですが間違いないでしょうか。
上記ご認識のとおりです。
以上、よろしくお願いいたします。
ご回答ありがとうございます。
EMU-bootでの確認、およびOTP領域への書き込みを行い、
ともに正常に動作いたしました。私の記載した以下の値について、一部表記ミスがありました。
後々このトピックを参照する方のために修正版を記載しておきます。
Z1-OTP-BOOTPIN-CONFIG(Z1OTP-GPREG1)(0x7800C):0x5AFFFFFF
Z1-OTP-BOOTDEF-LOW(Z1OTP-GPREG3)(0x7801C):0xFFFFFF03
Z1-OTP-BOOTDEF-HIGH(Z1OTP-BOOTCTRL)(0x7801E):0xFFFFFFFF(書き込み無し)この度はご対応ありがとうございました。
ご丁寧に修正いただきありがとうございます。Fが2つ足りなかったのですね!
また不明点が御座いましたらお問い合わせください。
以上、今後とも宜しくお願いいたします。
-
投稿者投稿