VSCodeにMCUXpressoを使用しており、MIMXRT1060-EVKBボード上のアプリケーションをデバッグしようとしています。
私のプログラムサイズが128 KBのサイズマークを超えているように見えるまで、すべてが正常に機能します。
リンカマップは、0x00000000で512 KB全体をITCMとして使用するように設定されているので、収まるはずです。
ただし、次のようなエラーメッセージダイアログウィンドウが表示されます。
デバッグを開始できません。コマンド "-interpreter-exec console "load"" からの予期しない GDB 出力。ロードに失敗しました
デバッグコンソールのログを少し掘り下げると、次のように表示されます。
[Warning] 1: (6334) STDERR: Wc: ============= SCRIPT: RT1060_connect.scp =============
[Warning] 1: (6334) STDERR: Wc: RT1060 Connect Script
[Warning] 1: (6334) STDERR: Wc: DpID = 0BD11477
[Warning] 1: (6334) STDERR: Wc: APID = 0x04770041
[Warning] 1: (6334) STDERR: Wc: Disabling MPU
[Warning] 1: (6334) STDERR: Wc: Configure FlexRAM for 768KB OC RAM, 128KB I-TCM, 128KB D-TCM
[Warning] 1: (6334) STDERR: Wc: Finished
[Warning] 1: (6334) STDERR: Wc: ============= END SCRIPT =============================LinkServer フォルダにあるこの RT1060_connect.scp スクリプトは、ITCM に 128 KB の制限を設けて RAM を明示的に構成しているようです。
360 REM ====== Configure FlexRAM ======
370 print "Configure FlexRAM for 768KB OC RAM, 128KB I-TCM, 128KB D-TCM"
380 REM TCM CTRL Poke 0x400B0000 - to force RAM clocking and set wait states = b100
390 Poke32 this 0x400B0000 0x4
400 REM IOMUXC_GPR17 0x400AC044 - this sets bitfield allocation of FlexRAM 32KB banks to OC 256KB b01, I 128KB b11, D 128KB b10
410 Poke32 this 0x400AC044 0x5555FFAA
420 REM IOMUXC_GPR16 0x400AC040 - this sets enables for I and DTCM and the source of the TCM config = 0x200007
430 Poke32 this 0x400AC040 0x200007
440 print "Finished"
450 REM ===============================この方法がVSCodeで動作することを確認します。