わがロボットの譜

千葉工業大学、総合工学研究会所属の者です。とりあえず、二足歩行ロボット作成日誌です。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

STM32F4の開発環境構築

お久しぶりです.
いろいろありますが生きてます.

ちょっと時間ができ(?)ので,前々からやろうとしていたSTM32の開発環境の構築にトライ.

とりあえず必要なものをインストール.
eclipse & プラグインのCDTはすでに入っていたので,

次に入れるものはクロスコンパイラな模様.
で,みんな口を揃えてCodeSourceryG++推しなようなのでググって入れてみる.
が,本家ページ行くと今の最新版は違う名前の模様(?)
とりあえず Sourcery CodeBench Lite をダウンロードしてインストール.
Ubuntuだと.binが実行できず困った.
http://etherpod.org/blog/?p=1494
ここのブログに助けられなんとかインストール.

で,あれだろ?後はオプションつけてコンパイルすれば俺の勝ちだなと思ってみるも,
全然オプションがわからない.

とりあえずAtollic true stdio という開発ボードが推してる,ツールを入れてmakefileを作成してみる.
オプションがすごい量.もちろんサッパリわからない.
一つひとつ地道ーに見てみます.

これを機に積んであったGNUmakeも読んだという気合の入れようですよ。
わからないということがわかっただけでしたが。

オプションの記述は
http://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html
http://www.sra.co.jp/public/sra/product/wingnut/ld/ld-ja.html#SEC_Top
ここらへんを参考にしてみた。本家はどこに書いてあるんだろう←

-lm
lはライブラリの名前の前にくっついて、ライブラリの読み込みをさせる。ってことでm.aを読み込んでる。
m.aは数学ライブラリ。

-mthumb
正直良くわからない。thumbコードにするぜってオプションなのか?
とりあえずデフォルトが32bit長の命令なのを、16bitにしてるんじゃないかと思っている。
浮動小数点演算の高速化なんて記事もみつけた。ここらへんは今後検証したい。

-mhard-float
ハードウェア小数点演算を使いますよ。でしょうどうみても。これは設定画面で選択した。

-mcpu=cortex-m4
どうみてもCPUの選択。

-mfpu=fpv4-sp-d16
ハードウェアで小数点演算を行う場合の、小数点演算ユニットの種類の選択。
まぁ、作成されたコードがfpv4-sp-d16と書いてあるので、きっとこれがのってるに違いない。

ここから下はリンカに渡すオプションな模様。まとまった資料に出会えなかった。
多分ココらへんは必要ないのではないか?
-Wl,--gc-sections -T$(LINK_SCRIPT) -static
http://blog.kmckk.com/archives/2601869.html
うーん、GCみたいなもの…?まぁ要らない関数を分けてくれますと。
後ろについてるものはもうね。ほら…なんですかね。-staticは静的リンクってこと?
LINK_SCRIPTは別の行で指定されている。デフォルトの挙動ではなく他のスクリプトを実行している。

-Wl,-cref "-Wl,-Map=$(BIN_DIR)/hoge.map"
クロスリファレンステーブルを出力。で、出力場所を変更してるってことか?
全然わからない。

-Wl,--defsym=malloc_getpagesize_P=0x1000
グローバルシンボルをつくり、絶対アドレスをその値とすると。
0x1000がはどの部分の絶対アドレスなのかわかれば少しは試合になるんだろうか。



http://d.hatena.ne.jp/suikan+blackfin/20101202/1291297872

を参考にするかぎりリンカ回りは要らなそう。
他にいろいろ出力するのはなにか別の用途なんだろうか。


とりあえず根本て的な仕組みを理解していないので、なかなかしっくりこない。
とくにリンカ。


なにか勉強するのに良い物はありませんかね。
一体全体どういう本を読んだらいいのかも全然検討がつかないという…

大夫ハナシはそれてしまったけれども、長くなるのでこのぐらいに。
しばらくはちょくちょくやれそうなので、続きはおいおいやっていきます。

スポンサーサイト

PageTop

コメント


管理者にだけ表示を許可する
 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。