わがロボットの譜

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

スポンサーサイト

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

PageTop

STM32F4の開発環境構築(本当はこれが本編です)

今日もちまちまとやっていきます。

さて、今までやってきたことですが、結果的にビルドを通るようにしたものの上手く行かず。
やってらんねーよ!

この前までのブログ記事なんてなかったんだ!

ってことでまぁ初めからこうなるだろうと予想していたAtollicStudioを使う方法をば。

STM32F4 Discovery を Eclipse で開発 を尋常じゃなく参考にしました。


基本みながらやればできますがが、いささかわかりにくかったところを。

プロジェクトの設定でコピペしてくるのは、Librariesとsrc、stm32f4_flash.ldです。

4) spirintf()云々は、全然理解できなかった&別にsprintfを使いたいわけではないのでスルー。
zylinのデバッグ環境も設定画面がエラーと言われ開けずスルー。
gdbは別もスルー。

いいのかこんなんで…


とりあえず自分は
arm-none-eabi-hogeと世間ではなっているらしいところが、
arm-none-linux-gnueabi-hogeとなっていたので、
プロジェクトの設定 → C/C++ビルド → 設定 から、すべてのコマンドを全力で修正。

良からぬエラーが出るので、srcの下にある、printfも削除。(もとの作成時に作らなくてもよかった)
なんだかわからないアセンブリのエラーも華麗にコメントアウト!
/* Call static constructors */
// bl __libc_init_array



無事コンパイルできました。
本当にありがとうござます。


書込方法は、LinuxでもST Linkが使えるということで、
STM32 Value Line DiscoveryをLinuxで開発する(2) を参考にさせてもらいました。

自分はバーション2の方を使って見ました。

バージョンの違いなのかビルドの方法が違ったのでメモ。
解凍したstlinkフォルダ下で、
./autogen.sh
./configure
make
を叩けとのことです。
まぁREADMEに書いてあるんですけどね。
未来の自分が英語を読み直さなくても済むように(

終わったら、基板を接続した上で
sudo ./st-utils
で起動します。

初めスーパユーザで実行してあれ?できないぞ?となってしまったのでご注意を。

起動後の使い方はまんま真似しました。

少々面倒。きっとなんとかなるのだろうけどそんな手間ではないのであまり気にしていない。
でも、なんとかしたいなぁ。






とりあえずサンプルをパクって、LED制御までをやってみた。
IO1つにも設定が多すぎてなんだか冗長な感じがしてしまいますが、気にしたら負けでしょう。


で、毎回ここら辺の設定するのが面倒だなーと思ったので、テキトーに対処。

コピペした中にあったすべてのヘッダをプロジェクトの外部にひとまとめにする。
で、パスおよびシンボルのインクルードパスはそこを参照するだけに。
stm32f4_flash.ldも外に退避。
プロジェクト下には、
元のsrcフォルダと、ドライバ用のソースフォルダをまとめた、driver_srcだけが有る状態に。

とりあえずここら辺で、ファイル → エクスポート → ファイル・システム
で、プロジェクト全体をテキトーなところに出力しておきます。

あとは今後、新規プロジェクト作成してから、ファイル → インポートでとりこめばよいだけ。


ものすごーーーーーーくとりあえずですが、使えるようにはなりました。
さてこれからどうして行こうか。


そうだ、最後にもうひとつ、C++プロジェクトで作成して、mainもcppですが、問題なくいけるようです。
これでAtollicStudioでは出来なかったC++での開発ができるということです。

要らない人にはでっていうという問題ですが;

スポンサーサイト

PageTop

コメント


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

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