このガイドは、エンドユーザーからリクエストされたもので、彼は MDK プロジェクトの RAM コードを MIMXRT1170 外部 QSPI フラッシュにダウンロードしたいと考えています。したがって、NXP RT1170 SDKとMIMXRT1170-EVKボードに基づいて、MDKプロジェクトを生成し、アプリイメージを再割り当てし、イメージを生成し、ツールを使用してコードを外部フラッシュにダウンロードします。
SDK_2_15_000_MIMXRT1170-EVKのWebページを開きます。
https://mcuxpresso.nxp.com/en/builder?hw=MIMXRT1170-EVK
SDK をダウンロードし、1 つの MDK スタンドアロン プロジェクトを生成します。
図1
図2
ダウンロードすると、MDKプロジェクトであるMIMXRT1170-EVK-iled_blinky_cm7.zipが手に入ります。
RAM イメージは none-xip イメージであるため、通常は IDE に対して、デバッグが RAM 内にあるため、フラッシュに直接ダウンロードできません。フラッシュにダウンロードしたい場合は、アプリイメージを生成してから、ツールを使用して外部フラッシュにプログラムできます。通常、none-xipイメージ、IVTオフセットは0X400であるため、イメージの開始アドレスを再割り当てする必要がありますが、ここでは、0X2000をアプリのエントリアドレスとして使用できます。
図3
ITCM のデフォルト サイズは 256K=0X4000 であるため、リンカ ファイル> scf ファイルを次のように変更します。
図4
次に、ツールのダウンロードに使用されるhexとbinの画像ファイルを生成します。
図5
bin file コマンドを作成するには、次のようにします。
$K\ARM\ARMCC\bin\fromelf.exe --bin --output=debug\@L.bin !L
図6
ビルドすると、フォルダにファイルを見つけることができます。
MIMXRT1170-EVK-iled_blinky_cm7\iled_blinky_cm7\debug
図7
イメージの再割り当て後も、一部のお客様はMDK RAMプロジェクトがデバッグを行うことができる場合がありますが、ここではデバッグ.iniを変更する必要もありますファイル。また、SP、PC、およびベクター テーブルのオフセット レジスタ アドレスも変更する必要があります。
図8
次に、コードをビルドしてデバッグすると、RAMイメージのデバッグモードに入ることができることがわかります。
図9
MCUBootUtility ツールを使用して、コードをダウンロードできます。
https://github.com/JayHeng/NXP-MCUBootUtility/releases/tag/v6.1.0
関連するユーザーマニュアルは次のとおりです。
https://github.com/JayHeng/NXP-MCUBootUtility
ツールをダウンロードします。
MIMXRT1170-EVKは、SW1を変更してシリアルダウンロードモードに入ります。
1-オフ、2-オフ、3-オフ、4-オン
ボードの電源をオフにしてから再度電源を入れ、J20USB1インターフェイスを接続するための別のUSBケーブルを見つけます。
次に、MCUBootユーティリティを使用してボードを接続します。
図10
接続後、MDKプロジェクトで生成された.hexを選択しますファイル:
図11
All-in-One-Actionボタンを押してコードをダウンロードすると、ダウンロードされた結果は次のようになります。
図12
「デバイスのリセット」ボタンを押してツールを終了します。
次に、MIMXRT1170-EVKボードSW1を変更します。
1オフ、2オフ、3オン、4オフ
EVKオンボードリセットボタンSW4を押すと、LEDが点滅し、MDK RAMプロジェクトがすでに外部QSPIフラッシュにダウンロードされていることを意味し、OKが起動します。