LSI Jiu-Jitsu

電子工作とブラジリアン柔術

STM32で遊ぶ (1) - Mbed

短い期間でしたが仕事でARMコアのCortex-M4を搭載したCPUマイコンに触れる機会がありました。
そこまで深い機能まで使用することは無かったのですが、これで終わりにするのは勿体ない思いがあり、自宅で少し遊んで(勉強)みることにしました。

Cortex-M4を搭載したマイコン「STM32」の開発ボードが何種類か販売されていますが、その中で「STM32F466RE」を購入してみました。
秋月電子で1,980円でした。
STM32 Nucleo Board STM32F446RE: マイコン関連 秋月電子通商-電子部品・ネット通販

f:id:mohran:20190505011819j:plain

会社ではそれなりに高価な開発ツールを使用していましたが、自宅ではボード以外にお金をかけるつもりはありません(笑)
どこまでできるのか未知数ですが、チャレンジしてみたいと思います。

初めにPCとボードをUSBで接続しただけで使用できるオンライン開発環境のMbedからLED点滅のプログラムを試してみました。
備忘録も兼ねて手順を書き連ねて行きたいと思います。

エクスプローラーからボードドライブを開いて「MBED.HTM」を開きます。
f:id:mohran:20190507001758j:plain

Sign up」からユーザー登録を行います。
f:id:mohran:20190507001813j:plain

ログイン後「Compiler」をクリックします。
f:id:mohran:20190507003306j:plain

Mbedのワークスペース画面に移りますので「新規」→「新しいプログラム」をクリックします。
f:id:mohran:20190507002036j:plain

「テンプレート」から「Blinky LED test for the ST Nucleo boards」を選択して「OK」をクリックします。
f:id:mohran:20190507002250j:plain

LED点滅のサンプルプログラムが表示されます。
f:id:mohran:20190507002431j:plain

コンパイル」をクリックします。
f:id:mohran:20190507002529j:plain

ダウンロードディレクトリに「Nucleo_blink_led.NUCLEO_F446RE.bin」が生成されますので、このファイルをボードドライブへコピーすると実行されます。
f:id:mohran:20190507002605j:plain

Mbedを利用することで、たった数行のコードで簡単にLED点滅が実現できました。

Arduino IDEのように誰でも簡単にプログラムを学ぶことができますね。

ただ、マイコンをいじっている感覚が薄れてしまうと感じているのは古い人間だからでしょうか?(笑)

データシートから機能に対応したレジスタを探し出して、アドレスとビットフィールドを見つけて設定してと・・。

今では古風なやり方なのかも知れませんが、そんなやり方を次回から試してみたいと思います。