今回はMbedクラウドの話題です。
Mbedについてご存じない方は こちら や こちら をご覧になってください。
開発環境がクラウド上に揃っているので、環境の構築なしでプログラムを動かすことができます。
対応しているボードとネットにつなぐ環境があればユーザー登録してすぐに動かしてみることができます。
初めての方は こちら の右上のコンパイラ ボタンを押すことで登録画面に移りますのでユーザー登録しましょう。もちろん無料です。
メールアドレス、ユーザー名、パスワードなどが必要になりますので忘れないようにメモをとっておきましょう。
Mbedが最初に起動すると画面の右上に「No device selected」と表示されるので、そこをクリックします。
そして以下の画面で左下の Add Board を選択します。
そうすると開発ボードのサイトに移動します。
画面の左側にチェックボックスが並んでいて、これらがフィルターになっています。
ターゲットコアの Cortex-M4 と対象ベンダーの STマイクロエレクトロニクスにチェックを入れます。
こちらのサイトでは NUCLEO-F401RE ボードを使ってIDEの説明などをしてきました。
ボードリストから手持ちのボードである NUCLEO-F401RE を探して選択します。
次の画面で右下の方にある Open Mbed Compiler を選択します。
MbedクラウドCompiler画面の右上に「NUCLEO-F401RE」が表示されました。
メニューのインポート – 検索ボタンを押すとプログラムのリストが表示されますので mbed_blinky をダブルクリックします。
プログラムワークスペースの main.cpp をダブルクリックすると以下のコードが表示されます。
#include "mbed.h"
DigitalOut myled(LED1);
int main() {
while(1) {
myled = 1;
wait(0.2);
myled = 0;
wait(0.2);
}
}
メニューからコンパイルを選択すると、画面左下に mbed_blinky.NUCLEOF401RE.bin というファイルがダウンロードされます。
STM32F401REボードとPCをUSBケーブルでつなぐと、ボードがドライブとして認識されます。
こちらの環境では NODE_F401RE(D:) と表示されています。ここに先ほどの mbed_blinky.NUCLEOF401RE.bin というファイルをドラッグ&ドロップします。
これでコンパイルされたプログラムがボードに書き込まれてプログラムが動作を始めます。
緑色のLEDが点滅すれば成功です。
開発環境の構築が不要かつプログラムの書き込みも簡単で、お手軽に試すことができます。
上のソースコードは言うまでもなくLチカするためのものですね。
DigitalOut というのがC++のクラスで GPIOを出力するためのクラスになります。
HALもそこそこ抽象化されたものですが、MbedはHALと比べて更に少ないソースコード量で書けることがわかります。
こちら からいろいろな方がつくられたソースコードを探して使うこともできます。
I2C や SPI , SDカードを操作するもの等、いろいろなクラスがありますので、ぜひ試してみてください。
これからC++を学ぼうとしている方には、お勉強のとっかかりとして触ってみるのも良いかも知れません。
この続きを読むには こちら からどうぞ。
コメントを書く