HowTo:使用方法・手順説明

更新日:2024-12-02

RSK+RZT2M(Cortex-R52、RZ/T2M)

J-FlashツールからRZ/T2MマイコンのSPIフラッシュへの書き込み方法を説明します。


J-Flash:SPIフラッシュデータ書き込み

Flasherシリーズ及びJ-Link PLUS以降のモデルの製品(PLUS、PLUS Compact、ULTRA+、PRO)は量産書込み専用「J-Flash」ツールが使用可能です。J-Flashプログラムは「J-Link Software」及び「Flasher Software」パッケージに含まれています。※RZ/T2デバイス(Cortex-R52コア)への環境には、ハードウエアバージョンが最新J-Link/Flasher本体をご使用ください。

以下、RSK+RZT2M評価ボード環境での「J-Flash」ツールの操作方法を説明します。

J13又はJ20コネクタにJ-Link / Flasherを接続してRSKボードに電源を入れます。

XSPI0_CS0(0x60000000~)空間のQSPIフラッシュから起動するようにRSKボードのブートモードを設定してボードに電源を入れます。CN8ジャンパを(2-3ショート)に設定してQSPIフラッシュを選択します。Octal SPI(OSPI)フラッシュへの書き込みを行う場合は、CN8ジャンパを(1-2ショート)に設定します。

パソコンのスタートメニューからSEGGERソフトウエアパッケージの「J-Flash」プログラムを起動します。実行後に「Welcome to J-Flash」ダイアログが表示されます。以下順の操作で新規デバイス設定ダイアログを開きます。

  1. 「Create new project」項目を選択して「Start J-Flash」ボタンをクリックします。
  2. 「…」をクリックしてターゲットデバイス設定ダイアログを起動します。
新規プロジェクト

Target Device Settingダイアログから「R9A07G075M2」デバイスを選択し「OK」ボタンをクリックします。

RZ/T2Mデバイス選択

Flash Banks設定グループの「0x60000000 External QSPI(XSPI0)」を有効に選択し「OK」ボタンをクリックして新規J-Flashプロジェクトを作成します。

RZ/T2M QSPIフラッシュローダ選択

J-Flashメニューから「Options → Project settings...」コマンドを実行してプロジェクト設定ダイアログを開きます。「Target Interface」タブの接続モード項目を「SWD」に指定して、画面右の“SWD speed after init”項目のクロック設定値を「8000kHz」に変更します。設定ダイアログを終了して「File」→「Save project」又は「Save project as..」メニューコマンドでプロジェクトを保存します。

SWDクロック設定更新

書き込むイメージデータのアップロード:
「File → Open data file」コマンドでQSPIフラッシュに書き込むデータファイル(*.mot、*.srec、*.hex、*.bin、*.raw、*.elf)を開きます。バイナリデータファイルの場合は、表示されるダイアログボックスに「60000000」を入力します。MOT/HEX/SREC/ELF式データファイルの場合はアドレス情報はイメージファイルに含まれていますのでロードアドレス設定は不要です。
※「Edit → Relocate」コマンドでオフセットアドレスを指定してMOT/HEX/SREC/ELF式データイメージを別アドレスに移動可能です。

データファイルを開く

Production/Autoモード書き込み操作:
ターゲットメニューから「Target → Production Programming」コマンドで、Erase → Program → Verifyを実行します。書き込み処理の結果はメッセージダイアログで表示されます。また、詳細はログウインドウに表示されます。

AUTOモード書込み

マニュアルモード個別コマンド操作:
ターゲットメニューの「Target → Manual Programming」下のコマンドで、Erase(Sector Erase又はChip Erase)、Program、Verify、データ読み取りは実行できます。コマンド処理の結果はメッセージダイアログで表示されます。また、詳細はログウインドウに表示されます。

コマンド:Target → Manual Programming → Erase sectors

...
 - Blank checking 0x63F60000 - 0x63F7FFFF
 - Blank checking 0x63F80000 - 0x63F9FFFF
 - Blank checking 0x63FA0000 - 0x63FBFFFF
 - Blank checking 0x63FC0000 - 0x63FDFFFF
 - Blank checking 0x63FE0000 - 0x63FFFFFF
 - End of erasing sectors
 - Start of restoring
 - End of restoring
 - WARNING: Flash bank 1 disabled, skipped.
 - WARNING: Flash bank 2 disabled, skipped.
 - Erase operation completed successfully - Completed after 102.546 sec

コマンド:Target → Manual Programming → Program

Programming target (1043488 bytes, 1 range) ...
 - Checking if selected data fits into selected flash sectors.
 - Start of determining flash info (Bank 0 @ 0x60000000)
 - End of determining flash info
 - Flash bank info:
 - 1024 * 64 KB @ 0x60000000
 - Start of preparing flash programming
 - End of preparing flash programming
 - Start of determining dirty areas in flash cache
 - End of determining dirty areas
 - CPU speed could not be measured.
 - Start of flash programming
 - Programming range 0x60000000 - 0x6000FFFF (  1 Sector, 64 KB)
 - Programming range 0x60010000 - 0x6001FFFF (  1 Sector, 64 KB)
 - Programming range 0x60020000 - 0x6002FFFF (  1 Sector, 64 KB)
 - Programming range 0x60030000 - 0x6003FFFF (  1 Sector, 64 KB)
 - Programming range 0x60040000 - 0x6004FFFF (  1 Sector, 64 KB)
 - Programming range 0x60050000 - 0x6005FFFF (  1 Sector, 64 KB)
 - Programming range 0x60060000 - 0x6006FFFF (  1 Sector, 64 KB)
 - Programming range 0x60070000 - 0x6007FFFF (  1 Sector, 64 KB)
 - Programming range 0x60080000 - 0x6008FFFF (  1 Sector, 64 KB)
 - Programming range 0x60090000 - 0x6009FFFF (  1 Sector, 64 KB)
 - Programming range 0x600A0000 - 0x600AFFFF (  1 Sector, 64 KB)
 - Programming range 0x600B0000 - 0x600BFFFF (  1 Sector, 64 KB)
 - Programming range 0x600C0000 - 0x600CFFFF (  1 Sector, 64 KB)
 - Programming range 0x600D0000 - 0x600DFFFF (  1 Sector, 64 KB)
 - Programming range 0x600E0000 - 0x600EFFFF (  1 Sector, 64 KB)
 - Programming range 0x600F0000 - 0x600FFFFF (  1 Sector, 64 KB)
 - End of flash programming
 - Flash programming performed for 1 range (1048576 bytes)
 - 0x60000000 - 0x600FFFFF ( 16 Sectors, 1024 KB)
 - Start of restoring
 - End of restoring
 - WARNING: Flash bank 1 disabled, skipped.
 - WARNING: Flash bank 2 disabled, skipped.
 - Target programmed successfully - Completed after 3.907 sec

コマンド:Target → Manual Programming → Verify

Verifying target ...
 - 1043488 bytes, 1 range, 0x60000000 - 0x600FEC1F
 - Checking if selected data fits into selected flash sectors.
 - Start of determining flash info (Bank 0 @ 0x60000000)
 - End of determining flash info
 - Flash bank info:
 - 1024 * 64 KB @ 0x60000000
 - Start of preparing flash programming
 - End of preparing flash programming
 - Start of determining dirty areas in flash cache
 - End of determining dirty areas
 - CPU speed could not be measured.
 - Start of verifying flash
 - End of verifying flash
 - Start of restoring
 - End of restoring
 - WARNING: Flash bank 1 disabled, skipped.
 - WARNING: Flash bank 2 disabled, skipped.
 - Target verified successfully - Completed after 1.939 sec

前のTOPIC

RZ/T2H EV-KIT(4x Cortex-A55, 2x Cortex-R52)

次のTOPIC

RZ/G3S-EVKIT(Cortex-A55, 2x Cortex-M33)