mbed NXP LPC1768 で Lチカ (LEDチカチカ)

2014-02-22 07.49.32

昨年末の懸賞応募であたった NXP mbed ボードをやっとこさ開封して Lチカ やります! このボード秋月通販価格で 5,200円もするボードです。プロセッサは ARM Coretex-M3 、フラッシュメモリ 512k、RAM 32k のマイコンです。

2014-02-22 07.50.32

早速開封でございます。中には以下のものが含まれていました。

  • マイコンボード
  • セットアップガイド
  • Mini-B USB ケーブル
  • シール
  • ピン配置表示のプラカードと紙カード(名刺サイズ)

2014-02-22 07.50.36

最初はセットアップガイドを確認(流し読み)します。書いてあることは
「マイコンボードを PC に接続して、認識された USB リムーバブルディスクの中にある MBED.HTM をクリックして楽しめ」
ということらしいです。

2014-02-22 07.52.35

ついでなんで、I/O ポートの配置が書かれているカードも見てみます。プログラミング用とは別に USB のポート出ているのはありがたい気がします。

  • SPI x 2
  • I2C x 2
  • Serial x 3
  • Ethernet
  • USB
  • CAN
  • AnalogIN 6ポート
  • PWM OUT 6ポート
  • 電源入力4.5V ~ 14V や、3.3V 出力など電源関連

2014-02-22 07.54.13

では、早速 mbed ボードを PC に接続します。今回は Windows 7 Home のノート PC です。USB コネクタ横の LED が点灯しました。どうやらこれが電源 LED の模様。

mbed20140222075500

USB メモリと同様に、mbed ボードがリムーバブルディスクとして認識されます。

mbed20140222075600

そのディスクをクリックすると、mbed.htm というファイルがはいっているフォルダが開きます。この .htm ファイルをダブルクリックすると、Web ブラウザが起動して mbed のオンラインコンパイラのアドレスに誘導されます。

スクリーンショット 2014-02-22 07.57.23

アカウントを作成してログインします。(持っていればそのままログインですね)

スクリーンショット 2014-02-22 07.57.56

ログイン完了した次の画面では、USB ポートに差している mbed ボードが認識されて、私のアカウントに LPC1768 ボードの情報が追加されました。このページにはマイコンボードのメモリサイズなど簡単な説明があります。

スクリーンショット 2014-02-22 07.59.05

同じページの中央部分に Hello World のサンプルコードが表示されています。青い import program ボタンを押すと、新しいブラウザのウィンドウかタブが開きます。これがコンパイラの画面です。

スクリーンショット 2014-02-22 07.59.21

インポート確認のダイアログボックスが表示されますので、import name など確認して OK で取り込み完了

スクリーンショット 2014-02-22 07.59.49

main.cpp のプログラムソースファイルと、mbed ライブラリがインポートされた模様です。ソースの中身は以下のようにポートの ON/OFF を時間待ちの関数で調整しているコードです。

#include "mbed.h"

DigitalOut myled(LED1);

int main() {
    while(1) {
        myled = 1;
        wait(0.2);
        myled = 0;
        wait(0.2);
    }
}

このウィンドウの上に、 Compile というボタンがあります。これを押すとコンパイルとリンクが自動で実行されます。

スクリーンショット 2014-02-22 08.00.13

コンパイルが終わりますと、コンパイルされた実行モジュールの PC へのダウンロードが自動で開始されます。ダイアログボックスが表示されてダウンロードするか聞かれましたので、ダウンロードします。

mbed20140222080100

ブラウザによってダウンロードされるフォルダが違うと思います。標準のままだと 「ダウンロード」というフォルダだと思われますが、フォルダを開きますと HelloWorld_LPC1768.bin というファイルがダウンロードされていました。

スクリーンショット 2014-02-22 08.02.56

ダウンロードされた HelloWorld_LPC1768.bin を mbed のリブーバブルディスクにコピー・ペースト、もしくは ドラッグ・ドロップ でファイルをkピーします

2014-02-22 08.03.26

mbed ボードのリセットボタンを押しますと無事 Lチカ(LEDチカチカ) 開始でございます。ここまで、写真や画面のコピー撮りながらやりましたが 7:50に開始して 8:05 完了でございます。このバイナリファイルをマイコンボードにコピーしたら書き込まれるのは楽でいいですな。マイコンプログラマの心配が要らないのはいいなと思いました。

あとは、以前にも ARM を使おうといじり出したことはあったのですが Coretex アーキテクチャ出る前でコンパイラが有償(それも地味に高かった)だとか、gcc もビルド面倒とかで結局そのときは使うの止めちゃいましたね。今回はオンラインコンパイル環境になり手元に環境無いとは言ってもアマチュアが遊ぶには十分と思いますし、他の方が開発されたライブラリが共有出来るのもいいと思いました