更新日:2021-05-03
J-Link Commanderツールを使用してJ-Link / J-Traceのコマンドライン操作(ターゲット接続確認、メモリダンプ、レジスタビュー、イメージデータのダウンロード、実行など)ができます。
J-Link CommanderツールはJ-Link ソフトウェアパッケージに含まれています。事前にJ-Link ソフトウェアをインストールしてください。
J-Link Commanderツールの起動:
J-Link/J-Trace本体のUSBポートをパソコンに接続します。J-Link付属の20-Pinリボンケーブルを使用して本体のTargetポートをマイコン基板のデバッグポートに接続します。
※ ターゲットボード側のコネクタ仕様が異なる場合は変換アダプタを使ってください。
ターゲットボードに電源を入れて、パソコンのスタートメニューから「J-Link Commander」プログラムを実行します。実行後にJ-Linkコマンドプロンプトコンソールが表示されます。
ターゲットマイコンデバイスに接続:
J-Linkプロンプトコンソールに「connect」コマンドを入力します。
Type "connect" to establish a target connection, '?' for help J-Link>connect Please specify device / core.: MK66FN2M0XXX18 Type '?' for selection dialog Device>
「?」を入力してマイコン選択ダイアログを開きます。
Type '?' for selection dialog Device>?
以下、RX71Mマイコンデバイスの接続事例を解説します。テストボードではJTAGポート接続ケーブルは「J-Link RX Adapter」を使用しています。
ターゲット基板のマイコン型番を確認して、マイコン選択ダイアログから「RX71M」デバイスを選択します。
Manufacturer: Renesas、Device: R5F571ML
Device>? Please specify target interface: J) JTAG (Default) F) FINE TIF>
接続モードを選択します。 以下、「J」を入力してJTAGモードを選びます。「JTAGConf>」プロンプトからENTERキーを押してデフォルト設定のまま進みます。
TIF>J Device position in JTAG chain (IRPre,DRPre): -1,-1 => Auto-detect JTAGConf> Specify target interface speed [kHz]. : 4000 kHz Speed>
ターゲットボード接続で安定して使用可能なクロック値(単位:kHz)を設定します。デフォルトクロックの4000kHzで問題なければEnterキーを入力します。
ハードウェア関連の問題がなくデバッグポート接続に成功する場合は、マイコンデバイス設定完了後に「J-Link>」コマンドプロンプトに戻ります。
Specify target interface speed [kHz].: 4000 kHz Speed>2000 Device "R5F571ML" selected. Connecting to target via JTAG TotalIRLen = 8, IRPrint = 0x00C1 JTAG chain detection found 1 devices: #0 Id: 0x0D020447, IRLen: 08, RX71M Core Found Renesas RX71M device Debugger authenticated successfully. Endian: little RX71M identified. J-Link>
以下、nRF52832マイコンデバイスの接続事例を解説します。テストボードではデバッグポート接続ケーブルは「J-Link Cortex-M 9-Pin Adapter」を使用しています。
ターゲット基板のマイコン型番を確認し、マイコン選択ダイアログから「nRF52832」デバイスを選択して、「OK」ボタンをクリックします。
Manufacturer: Nordic Semi、Device: nRF52832_xxAA
Device>? Please specify target interface: J) JTAG (Default) S) SWD T) cJTAG TIF>
接続モードを選択します。 以下の事例では、「S」を入力してSWDモードを選びます。
TIF>S Specify target interface speed [kHz].: 4000 kHz Speed>
ターゲットボード接続で安定して使用可能なクロック値(単位:kHz)を設定します。デフォルトクロックの4000kHzで問題なければEnterキーを入力します。
ハードウェア関連の問題がなくデバッグポート接続に成功する場合は、マイコンデバイス設定完了後に「J-Link>」コマンドプロンプトに戻ります。
Speed> Device "NRF52832_XXAA" selected. Connecting to target via SWD InitTarget() start InitTarget() end Found SW-DP with ID 0x2BA01477 DPIDR: 0x2BA01477 Scanning AP map to find all available APs AP[2]: Stopped AP scan as end of AP map has been reached AP[0]: AHB-AP (IDR: 0x24770011) AP[1]: JTAG-AP (IDR: 0x02880000) Iterating through AP map to find AHB-AP to use AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FF000 CPUID register: 0x410FC241. Implementer code: 0x41 (ARM) Found Cortex-M4 r0p1, Little endian. FPUnit: 6 code (BP) slots and 2 literal slots CoreSight components: ROMTbl[0] @ E00FF000 ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB00C SCS-M7 ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 003BB002 DWT ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 002BB003 FPB ROMTbl[0][3]: E0000000, CID: B105E00D, PID: 003BB001 ITM ROMTbl[0][4]: E0040000, CID: B105900D, PID: 000BB9A1 TPIU ROMTbl[0][5]: E0041000, CID: B105900D, PID: 000BB925 ETM Cortex-M4 identified. J-Link>
デバッグポート接続にエラーが発生する場合は、以下の点を確認ください。
J-Linkプロンプトから操作コマンドを実行:
デバッグポート経由でターゲットマイコンCPUに接続できましたら、J-Linkプロンプトからコマンドを実行してメモリアクセス、ファームウエアダウンロード、CPU実行、ステップ実行など可能です。
コマンド一覧はJ-Linkコンソールから「?」コマンドを実行して確認できます。
※最新版の情報はJ-Linkユーザマニュアルをご確認ください。
「regs」コマンドを入力してCPUレジスタ内容を確認します。CPUが実行中の場合は「h」コマンドでCPUを停止します。
● RXマイコンアクセス事例:
J-Link>regs CPU is not halted ! J-Link>h R0 = 0000B420, R1 = FFFFFFFF, R2 = 0008720A, R3 = 00000001 R4 = 00007C18, R5 = 0000B3DC, R6 = 00000000, R7 = 00000000 R8 = 00000000, R9 = 00000000, R10= 00000000, R11= 00000000 R12= 00000000, R13= 00000000, R14= 000000C0, R15= FFC00146 ISP 0000B838, USP 0000B420, INTB FFC00720, PC FFC01FEA, PSW 00030005, BPC 00000000, BPSW 80000000, FINTV 00000000, FPSW 40000100 J-Link>rreg 2 R2 = 0x0008720A J-Link>wreg R2 12345678 R2 = 0x12345678 J-Link>rreg 2 R2 = 0x12345678 J-Link>
● Cortex-Mマイコンアクセス事例:
J-Link>regs CPU is not halted ! J-Link>h PC = 0000105A, CycleCnt = E1F5C1FC R0 = 00000001, R1 = 2000FF98, R2 = 00000009, R3 = FFFFFC09 R4 = 00001238, R5 = 00000605, R6 = 00000000, R7 = 00000000 R8 = 00000000, R9 = 00000000, R10= 00000000, R11= 00000000 R12= 00000000 SP(R13)= 2000FFF0, MSP= 2000FFF0, PSP= 00000000, R14(LR) = 00001053 XPSR = 21000000: APSR = nzCvq, EPSR = 01000000, IPSR = 000 (NoException) CFBP = 00000000, CONTROL = 00, FAULTMASK = 00, BASEPRI = 00, PRIMASK = 00 FPS0 = 00000000, FPS1 = 00000000, FPS2 = 00000000, FPS3 = 00000000 FPS4 = 00000000, FPS5 = 00000000, FPS6 = 00000000, FPS7 = 00000000 FPS8 = 00000000, FPS9 = 00000000, FPS10= 00000000, FPS11= 00000000 FPS12= 00000000, FPS13= 00000000, FPS14= 00000000, FPS15= 00000000 FPS16= 00000000, FPS17= 00000000, FPS18= 00000000, FPS19= 00000000 FPS20= 00000000, FPS21= 00000000, FPS22= 00000000, FPS23= 00000000 FPS24= 00000000, FPS25= 00000000, FPS26= 00000000, FPS27= 00000000 FPS28= 00000000, FPS29= 00000000, FPS30= 00000000, FPS31= 00000000 FPSCR= 00000000 J-Link>rreg 8 R8 = 0x00000000 J-Link>wreg R8 12345678 R8 = 0x12345678 J-Link>rreg 8 R8 = 0x12345678 J-Link>
● RXマイコンアクセス事例:
J-Link>mem32 00001000, 8 00001000 = 00000000 00000000 00000000 00000000 00001010 = 00000000 00000000 00000000 00000000 J-Link>w4 00001010, 12345678 Writing 12345678 -> 00001010 J-Link>mem32 00001000, 8 00001000 = 00000000 00000000 00000000 00000000 00001010 = 12345678 00000000 00000000 00000000 J-Link>
● Cortex-Mマイコンアクセス事例:
J-Link>mem32 20000000, 8 20000000 = 03D09000 47474553 52205245 00005454 20000010 = 00000000 00000002 00000002 000011A0 J-Link>w4 20000010, 87654321 Writing 87654321 -> 20000010 J-Link>mem32 20000000, 8 20000000 = 03D09000 47474553 52205245 00005454 20000010 = 87654321 00000002 00000002 000011A0 J-Link>
● RXマイコンアクセス事例:
J-Link>erase Without any give address range, Erase Chip will be executed Erasing device... J-Link: Flash download: Total time needed: 1.279s (Prepare: 0.654s, Compare: 0.000s, Erase: 0.546s, Program: 0.000s, Verify: 0.000s, Restore: 0.077s) J-Link: Flash download: Total time needed: 12.029s (Prepare: 0.485s, Compare: 0.000s, Erase: 11.467s, Program: 0.000s, Verify: 0.000s, Restore: 0.076s) J-Link: Flash download: Total time needed: 0.672s (Prepare: 0.479s, Compare: 0.000s, Erase: 0.118s, Program: 0.000s, Verify: 0.000s, Restore: 0.075s) Erasing done. J-Link>loadfile C:\Workspace\RX\rx71m_fw.mot Downloading file [C:\Workspace\RX\rx71m_fw.mot]... J-Link: Flash download: Bank 1 @ 0xFFC00000: 2 ranges affected (73728 bytes) J-Link: Flash download: Total: 1.935s (Prepare: 0.519s, Compare: 0.350s, Erase: 0.250s, Program & Verify: 0.694s, Restore: 0.120s) J-Link: Flash download: Program & Verify speed: 104 KB/s J-Link: Flash download: Bank 2 @ 0x00120040: Skipped. Contents already match O.K. J-Link>
● Cortex-Mマイコンアクセス事例:
J-Link>erase Without any give address range, Erase Chip will be executed Erasing device... J-Link: Flash download: Total time needed: 0.065s (Prepare: 0.024s, Compare: 0.000s, Erase: 0.036s, Program: 0.000s, Verify: 0.000s, Restore: 0.004s) Erasing done.J-Link>loadfile Syntax: loadfile[ ] J-Link>loadfile C:\Workspace\nrf51_fw.bin 00000000 Downloading file [C:\Workspace\nrf51_fw.bin]... J-Link: Flash download: Bank 0 @ 0x00000000: 1 range affected (122880 bytes) J-Link: Flash download: Total: 2.249s (Prepare: 0.050s, Compare: 0.029s, Erase: 0.000s, Program & Verify: 2.142s, Restore: 0.026s) J-Link: Flash download: Program & Verify speed: 56 KB/s O.K. J-Link>verifybin C:\Workspace\nrf51_fw.bin, 00000000 Loading binary file C:\Workspace\nrf51_fw.bin Reading 122880 bytes data from target memory @ 0x00000000. Verify successful. J-Link>
「r」コマンドを入力しCPUをリセットして、「go」コマンドで実行します。
● RXマイコンアクセス事例:
J-Link>r Reset delay: 0 ms Reset type NORMAL: Reset CPU via CPURST bit J-Link>go J-Link>
● Cortex-Mマイコンアクセス事例:
J-Link>r Reset delay: 0 ms Reset type NORMAL: Resets core & peripherals via SYSRESETREQ & VECTRESET bit. Reset: Halt core after reset via DEMCR.VC_CORERESET. Reset: Reset device via AIRCR.SYSRESETREQ. T-bit of XPSR is 0 but should be 1. Changed to 1. J-Link>go J-Link>
「exit」又は「q」コマンドを入力してツールを終了します。
J-Link>exit
J-Linkソフトウェアのインストール手順