2012/03/07

Eclipseを使ったSTM32開発環境の構築

最初の記事が堅苦しいタイトルですが.

最近, STM32の環境をEclipseで1から作ろうとして苦戦しています.
以前マイコン徹底入門のサイト(http://miqn.net/)で配布されているEclipseとワークスペースを使って開発を行なったことはあったものの, 組み込みのプログラムの作り方を詳しく理解するためには, 1から作るのが近道かと思ったわけです.
ただし, 管理人は
  • Visual Studio, gccしか使ったことがない. gccはgcc hoge.c -o hogeというシンプルな実行方法しか知らない.
  • ソースコードをコンパイルするとき, コンパイラ・リンカ等が具体的にどういう手順で実行ファイルを作っているかなんて気にしたことがない.
ので, 一苦労の予感.

手元にあるのはストロベリーリナックスのSTBee MiniとUSBケーブル, PCのみ. STBee Miniのフラッシュへの書き込みはDFU経由で行う予定です.

メモがてら, やったことを書いていきます.
このサイトを参考にしました(京大機械研究会さんのサイト).

目標 : 構築した環境で作成したプログラムでLEDチカチカ
進捗状況 : ソフトのインストールしかできていない. リンカスクリプトとMakefileの書き方が分からない.

とりあえずソフトをインストール & プロジェクトの作成.
  1. Eclipseをインストール. バージョンはIndigo.
  2. Eclipseを起動したら, Help->Install New Softwareのプルダウンメニューから
    「Indigo - http://download.eclipse.org/releases/indigo」を選ぶ.
    Programming Language->C/C++ Development Toolsを選ぶ.
  3. Sourcery CodeBench Lite Edition for ARM (EABI)をインストール. 少し前まではSourcery G++ Lite Edition for ARMと呼ばれていたみたいですね.
  4. STM32F10x Standard Peripherals Firmware Libraryをダウンロード&解凍. 執筆時点での最新バージョンである3.5.0のものを使用.
  5. Eclipseを起動して, 新規プロジェクト(General->Project)を作成して, STM32Projectという名前をつける.
ここからが本題になるわけですが, リンカスクリプトの書き方が分からず, 詰まっています(笑)
京大機械研の方が書かれているように, リンカスクリプトはSTのライブラリとコンパイラに, ベースとなるものが付属しているようなので, それを弄って使っていく予定. 実際, マイコン徹底入門で使われているリンカファイルはRAISONANCEのRIDE用のものを弄ったもののようです. ただ, 編集・追加するにも, リンカスクリプトの知識は絶対に必要となるので, うーん, 何日潰れるだろうか.

リンカスクリプトを書き終えたら, プロジェクトにソースファイル・ヘッダファイル等を追加して, その後Makefileを書く予定です. 手順はこれでいいんでしょうか? 自信がありません. 間違いの指摘やツッコミ大歓迎です.

では, 続きはまた今度.

0 件のコメント:

コメントを投稿