ST Microelectronics社のSTM32マイコンのプログラム例を公開する. AD変換器の使用,タイマを使ったPWM出力などマイクロマウスに必要なものが含まれている. わりと汎用的に使えるのではないかと思うが, マイクロマウスロボットに特化している部分も多い.
私の作成したプログラム"STM32Fxprogram"と ST Microelectronics社のライブラリ"Standard Peripherals Library"を組み合わせて使用する. "STM32Fxprogram"は下記リンクからダウンロードできる.
ライブラリは探し出すのが難しいが, STM32 ARM Cortex 32bitマイクロコントローラ → リソース ソフトウェア → STM32 Embedded Software内にある下記ファイルである.(2014/02/15)
"STM32Fxprogram"内の"files_required.txt"に従ってライブラリのコピー等を 行うこと.
Mentor Graphics社の Sourcery CodeBench Lite Edition(GCCのコンパイル済みバイナリ)を使う.
インストール先にパスが通っていることが重要である. windowsインストーラを使った場合は自動でパス設定されるはずである.
なお,コンパイラ等を変更するとトラブルの元なので,このページではarm-2011.09を使う.
(2012/08/25)
コンパイルするには STM32Fxprogramディレクトリ内で "make" を実行すればよい. ただし,windowsには通常makeコマンドはインストールされていないため, コンパイラに付属のcs-makeを使用する. そのための方法は例えば下記の方法がある.
1.は最も基本的な方法である. 2.はダブルクリックだけでコンパイルできるので便利.
また,コンパイルによって生成されるファイルをすべて消去する「クリーン」を実行するには, STM32Fxprogramディレクトリ内で,"make clean" を実行すればよい. make同様以下の方法がある.
自作のFLASH書き込みプログラムを使う. STM32Fxprogramには同梱されている.
STM32を"System memory boot mode"で立ち上げて, "write_main.py"を実行する. ポート番号だけは環境に合わせて設定する必要がある.
windowsなら TeraTerm をインストールして使う.
通信のための設定値は以下の通りである.
項目 | 設定値 |
---|---|
ボーレート | 115200 |
データ | 8 bit |
パリティ | none |
ストップ | 1 bit |
フロー制御 | none |
TeraTermの場合,設定した値は,
STM32を"Main Flash memory boot mode"で起動すればよい.