FRK-FM3 (5) Keil µVision3 + GCC でシミュレーション2012年06月30日 21時20分03秒

Memory Map
FRK-FM3 (4) LED を点滅させてみるをシミュレータにかけてみる。

メニューの Project から Options for Targetを起動し Debug tab の Use Simulator にチェックを入れる。
これだけでokだ。
さっそく d マークのボタンをクリックしてシミュレータを起動し、Run。


*** error 65: access violation at 0x40011C00 : no 'write' permission


あらあら、いきなりエラーが出てきた。
今まで、このような経験は無かった気がする。
エラーメッセージによると書き込みが許可されて無いアドレスにアクセスしたようだ。
メニュー / Debug の Memory Map を参照してみる。
Peripherals のマップがごっそり抜けている。
0x1FFF0000 から 0x20010000 までの SRAM エリアも一部抜けている。 CPUのメモリマップはデバイスデータファイルに記述してあるのだと思うが、それらしい部分は見当たらない。マップレンジ 0x40000000,0x41ffffff を追加する。
もう一度 Reset ・ Run。エラーは出なくなった。しかし、問題はデバッグを抜けて再度デバッグモードに入ると先ほどの設定がクリアされてしまうことだ。今の所、設定を保存する方法が分からない。

しょうがないのでもう一つの方法、デバッグのイニシャルファイルで設定する事にする。Debug.ini というファイル名で以下の内容を記述する。
MAP  0x40000000, 0x41FFFFFF  READ WRITE  // allow R/W access to IO space
Options for Target の Debug tab で Initialization File に Debug.ini を登録する。


環境:FRK-FM3 (MB9BF618T)
    Keil µVision3 + GCC