Tako can fry!

とほほ・・・

8KB以上のアプリをビルド

Primer2 の開発環境 Ride7+CircleOS の制限として 8KB までのアプリしかデバッグできなくて、それ以上のサイズをデバッグしたい場合は Primer2 Pro とかいうライセンスの購入が必要とのこと。
そこまで行くと、ちょっとしたオモチャとしては高いなあと思わざるをえないわけで。


ビルドしてアプリを Primer2 にダウンロードする分には 8KB という制限はないという認識だったけど、LCD に絵を表示させようと思って 30KB ほどの画像ファイルをリンクしようとしたところ、ビルドできませんとのエラーが出て終ってしまった。
この手のブツに慣れている人なら、ああ、リンカスクリプトを書き換えればいいかとすぐに分かると思うけど、下のリンク先(フォーラム)にあるように、Circle_App.ld の FLASH と _eflash を変えてみるといいとのこと。
http://www.stm32circle.com/forum/viewtopic.php?id=596

MEMORY
{
  RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 16K
  FLASHB1 (r) : ORIGIN = 0x8000000, LENGTH = 0x0006000
  FLASH (rx) : ORIGIN = 0x8006000, LENGTH = 512K-0x6000
  EXTMEMB0 (rx) : ORIGIN = 0x00000000, LENGTH = 0
  EXTMEMB1 (rx) : ORIGIN = 0x00000000, LENGTH = 0
  EXTMEMB2 (rx) : ORIGIN = 0x00000000, LENGTH = 0
  EXTMEMB3 (rx) : ORIGIN = 0x00000000, LENGTH = 0
}

/* higher address of the flash allowed for the program */
_eflash = 0x8006000 + 512K-0x6000 -1;

/* higher address of the user mode stack */
_estack = 0x20005000;

フォーラムでは RAM も 48K に書き換えればたくさん使えるようになるよと書かれているけど、_estack のアドレスも書き換える必要があるかどうか気になるので、保留ってことに。