(旧記事)CubeMXプロジェクトの追加

(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の場合は

  • PLLM : /8
  • PLLN : x336
  • PLLP : /4
  • PLLQ : /7

です。

 あとは必要なペリフェラルの設定を行ってProject -> Generate Codeでプロジェクトを書き出してください。

 

Em::Blocksを使用してこのプロジェクトを使用する方法は次のページをご覧ください。