[ARM奮闘記 AT91R40807]

★リマップ

再び、メモリマップ。



起動時には、0x000000番地以降に、外付けのフラッシュROM が現れています。
0x000000番地付近は、ARMでは少し特殊な意味があり(割り込みなどで使う。後述。)ここを実行時に書き換えられないのは不便です。
そこで、中央のメモリマップを見てください。PrimaryRAM が 0x000000番地以降に現れてます。
この配置換えを行う設定をリマップと呼びます。
リマップには、EBI_RCRレジスタ(0xFFE00020番地) に 1 を書き込みます。
リマップはリセットされるまで解除できません、0 を書いても戻りません (^_^;

★スタートアップコードにリマップ処理を追加
前ページの書き込み保護解除の次あたりに次のコードを追加します。

@@@@ Remap @@@@
  ldr r0, =0xffe00000
  mov r1, #1
  str r1, [r0, #0x20]

ちなみに、NJARM7 にもリマップの機能が搭載されています。スタートアップコードを修正したくない場合には そちらを使うと良いでしょう。


[前へ][▲上へ][次へ]