(2014.12.13 作成)
CubeMXとはSTM32の古いライブラリセット(Standard peripheral library)に代えて提供しているCubeという環境に含まれるソフトウエアです。GUIでペリフェラルの設定を行ってボタンを押すとCで初期化コードを作成してくれる大変便利なソフトウエアなのですが、残念ながらEWARM, MDK-ARM, TrueSTUDIO という高額有償開発環境用のコードしか作成してくれません。
そこでこのページではフリーの開発環境である、Em::BlocksまたはCoIDEを使用してCubeMXを使うために、必要な方法を紹介しようと思います。
まずはSTマイクロさんのサイトからCubeMXをダウンロードしてインストールしてください。特に悩むことはないと思います。
CubeMXを起動して New Projectを始めます。
Target boardとして対象のボードを選びます。ここではNucleo F401REを選びます
Project SettingsでProject FolderをEm::BlocksまたはCoIDEで作成したプロジェクトFolderを指定します。
Toolchainは後で関連ファイルを削除するので何を選んでも大丈夫です。
STM32Cube Firmware Library Packageは
"Copy only the necessary library files"を選びます。
デフォルトの"Copy all ..."を選ぶと余計なファイルが入っているのでコンパイル時にエラーが発生します。
Nucleo基板を使用する場合で基板上に"MB1136 C-02"というシールが貼ってある場合はST-Link用マイコンからクロックを得ることが出来ますので、設定を行います。
Pinoutのタブを選んで
RCC のHSEをBypassに設定します。
マイコンに合わせてクロックを変更します。F401REの場合は
です。
あとは必要なペリフェラルの設定を行ってProject -> Generate Codeでプロジェクトを書き出してください。
Em::Blocksを使用してこのプロジェクトを使用する方法は次のページをご覧ください。