Search Notebooks

mbedを始めましょう!("Let's get started!" in Japnaese)

Japanese getting start guide for new users

Page owner: user NXP fan (in Japan)

Created 18 May 2010.
Last updated 4 days, 6 hours ago

mbedを始めましょう!("Let's get started!" in Japnaese)

Page last updated 4 days, 6 hours ago, by user NXP fan (in Japan)   tag No tags | 4 replies     Share: Digg Tweet This

このノートブックページは日本でのmbed普及加速を目的にまとめたものです.

This notebook page has been written in Japanese only.

"mbed"と関連のNXP LPCマイコンの総合情報はこちら >>   http://www.nxp-lpc.com/
「"mbed",試してみたい...」という方は,秋葉原のはんだづけカフェで実際にサンプルを触ってみることができます.スタッフの方に声をかけてみてください.
またガジェットカフェではmbedを使った工作教室(mbed貸出付き)などのイベントを行っていますのでご活用下さい.
その他いろいろなイベントも計画/実行中です.これらの最新情報はこちらでご確認いただけます.
このページの本文(他ユーザからのコメントを除く)内容は,出典としてこのページのURLを明記していただけば自由にご利用いただけます.文や写真の引用/転載/改変などに制限はありません.

1. 開梱からユーザ登録まで

まず,箱を開けるところから.

...その前にインターネットに接続されたPCが必要です.できるだけ最新のWebブラウザを入れておくと良いと思います.

PCWindowsでもMacでもLinuxでも構いません.ブラウザはFirefoxSafariChromeInternetExplorerに対応しています.

さて,箱を開けると中にはまず,簡単な解説書,クイックリファレンスカード2枚,ステッカー,USBケーブルとmbed基板が入っています.

クイックリファレンスカードは便利なのでちゃんと取っておきましょう(これを書いてる私は,既にどこかに紛失してしまい毎回このページ を見に行ってます)

 

mbed基板とUSBケーブルをビニール袋から取り出し,PCにつなぎます.

PCにつなぐとmbed基板の真ん中にある青いLEDが光り,PCからは2MBUSBメモリとして認識され,「MBED」ドライブがPC上に表示されます.

もし上手くいかない場合は...

Windowsの場合,PCが認識するまで時間がかかる場合があります.そのような時には「F5」キーを押してリフレッシュさせてください.

あるいは,USBのコネクタがしっかり差し込まれていないかもしれません.

 

表示された「MBED」ドライブを開きます.するとその中には「MBED.HTM」と名付けられたファイルが入っています.

このファイルには,そのmbedのシリアル番号とmbedwebページへのリンク情報が入っています.これをダブルクリックするとブラウザのウィンドウが開き,mbedのログイン・ページが表示されます.

(「MBED.HTM」ファイルは消してしまっても問題ありません.mbed基板に電源を入れ直すと また現れます.)

 

 

新しくmbedを始めるには,ユーザ登録が必要です.このページの右側,チップの絵のある方の「Signup」 をクリックしてユーザ登録ページに進みます.

 

ユーザ登録にはメールアドレス,mbedサイトでつかうユーザ名(ログイン名),パスワード,他のユーザから見られることになる名前を入力します.

最後に「terms and condition」をよく読み,それに同意出来る場合は「I agree ...」にチェックを入れ,「Signup」ボタンを押すと次のページが表示されます.


これで準備ができました.

2. ユーザ登録が完了すると,いよいよコードを動かせます.


まずは動作チェックとして「HelloWorld.bin」を動かしてみましょう.
mbedには文字表示部がないので,基板上のLEDをチカチカさせるプログラムになります.

ページ内のmbed基板の画像の下にある「HelloWorld.bin」をクリックしましょう.

そうすると,webブラウザはファイル(HelloWorld_LPC1768.bin)をダウンロードし始めます.
ダウンロードしたファイルは何処に置いても構いません.このファイルがmbed基板で実行するプログラムです.

ダウンロードが完了したら,ファイルを「MBED」ドライブ内にコピーしましょう.
もちろん,インターネットからのダウンロードをMBEDに直接行っても何ら問題ありません.その方があとでコピーを行う手間が省けていいでしょう.

コピーが完了したら,いよいよ実行です.

mbed基板真ん中にあるボタン(リセット・ボタン)を押すと,基板に4個並んだLEDのうちの1個(最も左のもの)が点滅します.

3. 自分のプログラムを作る!


いよいよ自分のプログラムを書いてみましょう.
mbedのページにはいろんなリンクが張られていますが,右上の方に「Compiler」というリンクがあります.見えなければ適宜ウィンドウの幅を広げたり,横方向にスクロールしてみてください.

たったの60秒でmbedコンパイラを紹介する動画(http://mbed.org/blog/entry/138/)が 公開(2010年5月21日)されています.こちらも参考にどうぞ.

これをクリックするとmbedのオンライン開発環境が表示されます.
左はしの部分には自分の作ったプログラム達が並ぶことになります.
右側にはコードの表示部とその下に状態表示を行う部分があります.


それではプログラムを作ります.
ウィンドウ左上にある「New」ボタンをクリックしてください.そうするとこの新しいプログラムに名前をつけてくださいと言われます.名前は自由につけられますが,残念ながら日本語の名前はつけられません.

ここでは適当に「program0」という名前をつけました.「OK」ボタンを押します.

すると左側の部分に新しいプログラムができます.さっきつけた名前のプログラムです.
この中には「main.cpp」という名のソース・ファイルと「mbed」というライブラリが入っています.

「main.cpp」をクリックするとその中身が表示されます(下の画面の例ではフォントの表示を大きくしています).

これが先ほど実行させたHelloWorldプログラムです.このコードをコンパイルしたものを,実行させていました.
さて...いよいよコンパイル...いや,その前に一箇所だけ書き換えておきましょう.
mbedの基板では先ほどのプログラムがまだ動いており,LEDがチカチカしてると思います.
今回コンパイルするプログラムはこれと全く同じものなので,新しいのが動いたのかどうかが分かりません.
ソースコード3行目には「DigitalOut myled(LED1)」と書かれています.この「LED1」を他のLEDを光らせるように書き換えます.基板に4個並んだLEDは「LED1〜LED4」の名前が与えられているのでそのうちのどれかを使ってください.
ここの例では「LED4」としました.

さて,コンパイルを行います.画面上の方に並んだボタンの中に「Compile」があるのでそれをクリック.そうすると,先ほどのコードはwebサーバ側でコンパイル,リンクされ実行コードが作られます.
完了すると右下枠内に「Success!」が表示され,webブラウザがファイルをダウンロードするように言ってきます.
このファイルを,さっきと同じようにMBEDの中に保存すれば,あとはmbed基板上のリセットボタンが押されるのを待つだけとなります.

ではmbed基板上のリセットボタンを押してみましょう.(mbed内部では [1] リセットがかかり,[2] 保存されたデータがLPC1768チップのフラッシュにコピーされ [3] 実行が開始されます.)

ちなみに...今後このようにして色々なプログラムがたくさん作られ,一度に複数のファイルがMBEDに保存された場合にはどうなるのでしょうか?
mbedはリセットボタンが押されると,自分の中の最も新しく保存されたファイル(タイムスタンプの最も新しいもの)を実行するように作られています.

4. プログラムを少し改造してみる

先ほどのLEDの自動点滅プログラムを少し改造してみましょう.
(ここの例は,mbedのプログラミングを紹介するwebページ(http://mbed.org/handbook/Programming)に掲載されているものをベースにしています.)
コードは以下のようなものでした.

#include "mbed.h"

DigitalOut myled(LED4);

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

これにアナログ入力を加えます.
pin20に入ってくる電圧によってLEDの点灯状態を変化させます.

#include "mbed.h"

AnalogIn myinput(p20);
DigitalOut myled(LED4);

int main() {
    while(1) {
        if( myinput > 0.5 ) {
            myled = 1;
        } else {
            myled = 0;
        }
    }
}

これをコンパイルして実行してみます.
(半導体屋の観点からは,あまりおすすめ出来る方法ではありませんが)pin20を指で触ってみましょう.触れている間,LEDが点灯します.

myledに1や0を代入することでLEDの制御が行えましたが,今度は入力を試してみています.
pin20のアナログ入力として定義されたmyinputからは,代入をを行うとその時のpin20の電圧に応じて0から1.0までの値が得られるようになっています(0=0V〜1.0=3.3V).ここではmyledの値が0.5(つまり1.65V以上)の時にLEDを点灯するプログラムになっています.

5. 次は?

ここまでで基本編は終わりです.ここからはHandbookCookbookページを見ながら探求をされるのがよいとおもいます.

しかし最近はmbedを入手したら,まず基本的な動作の確認,次にネットに接続してTwitterでつぶやくのがお決まりのコースのようになってるので,続編として「Twitterアプリを動かしてみる ("Let's try Twitter" in Japanese)」(http://mbed.org/users/nxpfan/notebook/lets_try_twitter_jp/)のページを用意してみました.よろしければこちらも御覧下さい.

2010年7月24日,2010年9月11日の両日,東京秋葉原のマルツメイク館で開催されたセミナー「ARMマイコンモジュールmbedを使ってつぶやこう【ネットワーク編】」の資料が公開されています.この資料ではmbedの概要を説明.そのあとにLEDの点滅,シリアルデータの表示,テキスト液晶の接続,ツイッターで日本語をつぶやく方法までを解説しています.
ダウンロードはこちらのページから
http://marutsumake.blog74.fc2.com/blog-entry-704.html

6. おまけ

おまけ編 (http://mbed.org/users/nxpfan/notebook/lets_get_started_jp_omake/)を用意しました.アナログ入力をファイルに記録して,表計算ソフトでグラフを書いてみます.


4 comments

25 May 2010

凄く丁寧な解説ありがとうございました。

凄く参考になりました。

アナログ入力まで迷わずに出来ました。

25 May 2010

そう言っていただけるととても励みになります.ありがとうございます.

この続編も企画中です.またこのほか解説にはこのようなページも存在しています.

http://mbed.org/users/okano/notebook/langja-personal-memo-usb%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%AB%E5%85%A5%E5%87%BA%E5%8A%9B/

11 Aug 2010

届いてから本サイトを見て5分でここのチュートリアルが終わりました。

わかり易い解説ありがとうございます。それにしても面白い仕組みですね。電子工作系って環境構築がしんどいってイメージがありましたが、

完全に払拭されました。Macで何も考えずに使えるのが幸せっす。

11 Aug 2010

ありがとうございます.コメントを頂けて,この上なくうれしいです!<br>このページを長々と書いたのですが,実作業は確かに,あっという間に済んでしまいます.逆にちょっと呆気ないです.

Macはprintfなどを使ったターミナル入出力に,別のドライバやソフトを入れなくてすむので便利です.
(二つ上のコメント(2010/05/25のNXP fanのもの)にシリアルについてのリンクもあるのでご覧ください)

Please log in to post a comment.