mbedでFlashやRAMの容量が違う同系列のSTM32を開発する

20-TSSOPパッケージのF030をmbedとして開発したので書いときます。

 

F030は64pinパッケージでNucleoとして発売されています(これ)。同じ系列のSTM32は同じバイナリを書き込めるので問題ない!と思うんですが、FlashやRAMの容量が違うんですよねー。

 

しかし、このFlashやRAMは簡単に変更することが出来ます。

 

①mbedプロジェクトをローカルビルド環境(gcc-arm)におとす

②以下のフォルダにアクセス

mbed > TARGET_NUCLEO_Fxxx >  TOOLCHAIN_GCC_ARM

③"STM32Fxxxxx.ld"を開く

④4,5行目にFlashとRAMを設定している項目があるので変更する

f:id:anbalioh:20160519185510p:plain

 

以上です。めちゃくちゃ簡単ですよね。

 

これでNucleoが出てるSTM32ならどのパッケージでも使えるようになるんじゃないでしょうか。つまりあれもこれもmbedで開発できる!

つ よ い !

 

 

昔の記事でsrcを使った方法できるんじゃね、と紹介していましたがもっと簡単にできました。

y_sharpさんありがとうございます。

 

6/1追記

f030f4p6でやるとよろしくなさそうです・・・

 

6/26追記

予想はしてたけど、mbedライブラリが大きくてflash 16kに入らないっぽい。

HALかSTM32plusかですねー。

超未熟者の僕からするとSTM32plusはライブラリがサポートしてる石(flashとramも含めて)を使うのがいい気がします。

こんな変な石はSW4STM32が自動で作ってくれる環境でゆるふわに開発したい・・・