GR-SAKURA
GR-KURUMI
GR-COTTON
GR-CITRUS
GR-PEACH
GR-KAEDE
GR-ADZUKI
GR-LYCHEE
GR-ROSE
GR-MANGO(*)
SNShield
Web Compiler
IDE for GR
TOPPERS関連
女子美コラボ
その他
※プロデューサミーティング中
作り方使い方資料
イベント関連
作品記事
体験記事
ライブラリ
ツール
その他・過去ファイル
こんにちはcobaと申します。
メモリマップでのプログラムサイズの確認方法について質問です。
がじぇルネのWEBコンパイラにてプロジェクトテンプレート(GR-PEACH_Sketch_V2.03)を使用しプログラムの作成とビルドの実行をし、
このときにできるメモリマップからプログラム(変数領域は除く)のサイズがどのくらいのサイズになるのか知りたいのですが、メモリマップのどの部分を見たらいいのかよくわかりません。
xxxxx(ファイル名).map には下記Memory Configurationが記載されていていたのですが、Memory ConfigurationでいうSFLASHの空間内に割り当てられているものがプログラムサイズと考えていいのでしょうか?初歩的な質問で恐縮ですが、アドバイスをお願いいたします。
Memory Configuration
Name Origin Length AttributesROM 0x00000000 0x02000000 xrBOOT_LOADER 0x18000000 0x00004000 xrSFLASH 0x18004000 0x07ffc000 xrL_TTB 0x20000000 0x00004000 rwRAM 0x20020000 0x008e0000 xrwRAM_NC 0x20900000 0x00100000 xrw*default* 0x00000000 0xffffffff
> このときにできるメモリマップからプログラム(変数領域は除く)のサイズがどのくらいのサイズになるのか知りたいのですが、メモリマップのどの部分を見たらいいのかよくわかりません。
素のプロジェクトをビルドした結果では
.boot_loader 0x18000000 0x3100 ./gr_common/gr_common.a(mbed_sf_boot.o)
↑ の辺りがブートローダ、
.text 0x18004000 0xbed8
↑ から以下が割り込みベクタと命令、
.rodata.PinNames 0x1800f1f0 0xb2 ./gr_common/gr_common.a(wiring_private.o)
↑から以下が読み出し専用データ、
.data 0x20020000 0x8ac load address 0x1800ff08
↑の右端の数字が変数の初期値の格納されるアドレス、真ん中がサイズで、これの合計 -1 (0x1800ff08 + 0x8ac - 1 = 0x180107b3) が ROM の使用領域の最後ということになりますね。