SnowLeopardにSTM32(Cortex-M3)の開発環境を構築

図書館で二時間時間を潰さないといけない状況になったので、なにかしようと思います。

そこで、最近無性にSTM32が使いたかったのでとりあえず開発環境でもを用意してみようかということで進めていきます。

今回は以下の二段構えになっています。

  • コンパイル環境の構築
  • 書き込み環境の構築

まず、前者についてはCortex M3開発環境 on Mac OS Xというページを参考にしました。

  • ARM用gccのインストール (Targetがarm-eabiのgcc)

ARM用のgccはSHやH8の時とはちがい、コンパイル済みのdevkitARMを利用します。このページからdevkitARMのOSXバージョンの最新版をダウンロードし、インストールします。

こいつはインストーラが無いので解凍してできたdevkitARMディレクトリを /usr/local/ ディレクトリにコピーしておきます。

そして、PATHを通すために~/.bash_profileファイルに(無ければ新規作成)

export PATH=$PATH:/usr/local/devkitARM/bin

という一行を加えておきます。
  • プロジェクトテンプレートの構築
次にSTM32のプログラムをコンパイルするためのプロジェクトのテンプレート(雛形)を作成します。
このディレクトリにSTMicroが用意してくれているSTM32のためのライブラリファイルや、リンカースクリプト、Makefile等を用意しておきます。新しくプログラムを作るときにはこのディレクトリのコピーを作成し、main.c等のユーザープログラムを書くだけでmakeコマンド一発でコンパイルできるようになります。
たぶんこれは二次配布可能だと思うので、圧縮したファイルを添付しておきます。問題があればコメントください。
このディレクトリはこのファイルでなくても、Strawberry LinuxのSTM32ボードであるSTBeeのサンプルプログラムでも構いません。
ただし、この場合には付属のMakefileの“arm-none-eabi”となっている所を全て”arm-eabi”に変更する必要があります。
以上でコンパイルまではできるようになりました。
次はDFUを使ってUSB経由で書き込みをするツールを用意します。dfu-utilというのを見つけたのでインストールしたいのですが、何故かコンパイルエラー。
ここで時間が来てしまったのでまた出来次第追記します。

5 Comments

  1. 川内康雄 より:

    管理者様

    突然のコメントにて失礼致します。
    当方、STM32マイコンをテーマにしたホームページ(http://miqn.net)を制作・運営いたしております川内と申します。
    このホームページははSTM32マイコンを題材に、開発環境の構築方法やRTOSの利用方法を解説しているホームページです。もともと書籍として刊行する予定で執筆しておりました原稿の一部をホームページで無償公開しております。また関連する動画も掲載中です。
    インターネットで検索を致しておりましたら、貴ホームページにSTM32に関する記事が掲載されているのを拝見いたしました。ご迷惑でなければ相互リンクをさせていただきたく、このメールを差し上げた次第です。
    勝手ながらこちらのリンクページには、先だって貴ホームページへのリンクを掲載させていただきました。ご迷惑であれば削除させていただきますのでお知らせください。
    http://miqn.net/node/38
    リンクを掲載いただけます場合には、「STM32マイコン徹底入門」というホームページ名をアンカーテキストとして、「http://miqn.net」にリンクを設定いただけますと幸いです。
    勝手を申しまして恐縮ではございますが、是非ともリンクをお願いいたしたく、よろしくお願いいたします。

    miqn.net管理人
    川内康雄

    • chibiegg より:

      川内様、コメントありがとうございます。

      こちらこそよろしくお願いします。リンクを掲載させて頂きました。
      これからもよろしくお願いいたします。

      ところでMacでDFU経由での書き換えってなさってる方いらっしゃいますか?

  2. 川内康雄 より:

    リンクありがとうございます。
    私も実はモバイルはMacなんですが、DFUの情報が少なくて困ってます。Atmelの奴がコードがあるのでそれをいじくったりというのも考えたんですが、ちょっと引いてます。

    • chibiegg より:

      そうなんですか、当方でdfu-utilを試した時は通信しようとするとSTM32がリセットされるので何かしらの接続はできてるみたいなのですが、さっぱり動きませんでした。

      Macを利用している開発者の方と接点が持てて心強いです。
      これからもよろしくお願いします。

      P.S.
      こちらも気がつかず申し訳ありません。

  3. こんにちは。

    MacでSTbeeMiniにDFUを使用した書き込みに成功した高校生です。
    Xcodeを使用して、ワンクリックでソースコードのコンパイルから、DFUを使用した書き込みまでが出来るようにしました。
    また、実際に思った通りに動作しています。

    http://kyokyodenko.blog.fc2.com/blog-entry-2.html
    にその方法を掲載しているので、良かったら見て下さい。

    また、相互リンクをお願いしてもよろしいでしょうか?
    もしお願い出来るなら、リンク先はhttp://kyokyodenko.blog.fc2.comでお願いします。
    もちろん、他のページでも良いですし、断ってもらってもかまいません。

    では。 😛

Takuji Matsumoto へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。

question razz sad evil exclaim smile redface biggrin surprised eek confused cool lol mad twisted rolleyes wink idea arrow neutral cry mrgreen

*