記事

DIPマイコンLPC1114FNでmbed入門 <1>mbedでLチカする手順

mbedでLチカする手順

 mbedシリーズは、多くのメーカからいろいろなマイコン/マイコン・ボードが多数ラインアップされています。mbedの大きな特徴は、高価なCコンパイラを購入しすることなく、無料でクラウド(Web上)の開発環境を使うことができる点です。このクラウド開発環境で、プログラム・ソースを記述してコンパイルし、mbedに書き込むbin形式ファイルを出力します。
 電子工作分野でmbedは、プログラミングのしやすさ、開発したシステムの処理能力で比較すると、ArduinoとRaspberry Piの真ん中に位置します。

mbed-開発.png
 mbedの中でも、最も安価に使い始めることができるマイコンLPC1114FNを利用し、クラウド開発環境を使ってみましょう。

LPC1114FNは安価で入手性が良いマイコン
 LPC1114FN(以後、1114FN)は28ピンの600mil幅の幅広ICパッケージとして販売されています。秋月電子通商やスイッチサイエンスより安価で購入できます。NXPセミコンダクターズの製品です。


1_P1370149.jpg
1114FNのピン配置
 1114FNのピン配置は次のとおりです。この図はmbedサイトより引用しています。
 クロック周波数48MHz、アナログ入力、PWM出力、I2C通信、シリアル通信などを備えた本格的な高性能マイコンです。VinとGNDに3.3Vを加えることで動作を開始します。
1114mbed3.png
binファイルを書き込むために必要なアダプタ
 mbedクラウドで作成したbinファイルを1114FNに転送書き込みをするための装置(アダプタ)が必要です。今回はスイッチサイエンスより発売されている製品mbed LPC1114FN28を使用します。


mbed01.png
 アダプタ単体のままでも使用可能ですが、アダプタの足を保護するためにブレッドボードに装着します。さらに1114FN の抜き差しが容易になるようにZIFソケットを装着しました。
 ZIFソケットはレバーを上げ下げすることにより、簡単にLPC1114FNを抜き差しすることができます。ピン数の多いICではリードを曲げてしまうこともなく便利です。


3_P1370208.jpg
 この状態で書き込み器として単体使用することもできます。また、ターゲット基板上のソケットに挿して使用することも可能です。この場合、LPC1114FNを書き込みの際に抜き挿しすることが不要となります。


mbed051.png
パソコンとの接続
 パソコンとはUSBケーブルで接続します。アダプタはマイクロB規格です。
 アダプタに1114FNをセットしてパソコンに接続すると、USBメモリのようにMBED(E:)ドライブとして認識されます。

mbed02.png

LEDを一つチカチカさせる通称「Lチカ」に挑戦
 mbed LPC1114FNをパソコンに接続して、binファイルを書き込む準備が整いました。さっそく「Lチカ」に挑戦しましょう。
Lチカの回路図
 製作するのは次の回路です。初めて作成実行するCプログラムをHelloWorldと呼びます。組み込み制御の分野では、最初に実行を試す意味でこのLチカをHelloWorldと呼ぶこともあります。LEDは何色でもかまいません。もしくはの砲弾型です。
6_AS000641.jpg

  • LEDはdp28に接続します。ほかのピンでも可能です。接続するピンを変更した場合、後に紹介するプログラムを書き換えます。
  • mbedの電源は安定した3.3Vが望ましいのですが、今回は単3乾電池2本を電源とします。

mbed022a.png

ブレッドボード上への組み立て
 回路図にしたがって、ブレッドボード上に回路を組み立てます。LPC1114FNはアダプタに装着したままでOKです。


mbed03.png
 写真では電池を接続していますが、プログラムを書き込み、動作確認する段階まで外しておきます。


21_P1370192.jpg
mbedクラウドでプログラム開発
 回路が完成しました。mbedクラウドを利用してプログラムの開発を楽しみましょう。
 mbedに会員登録をしていない場合は、登録を済ませて、Loginできるようにしてください。Signupから入って、指示に従うことにより登録できます。
 mbedのサイト内のCompilerまで移動します。

  (1) mbedトップ・サイト→ https://www.mbed.com/en/
  (2) mbed Classic Developer site→ https://developer.mbed.org/
  (3) Compiler → https://developer.mbed.org/compiler/#nav:/;

(1)  web01.png
(2)web02.png
(3) 

 表示例は筆者のmbed IDの内容です。いくつかのプログラムが既に入力された状態になっています。

8_AS000643.jpg

 2016年2月現在、mbedはver2.0ですが、もうすぐmbedOSが利用できるver3.0に移行するためにWebの構成が複雑になっています。

新規プログラムの作成

 新規プログラムの作成 新規→

 ひな形のプログラムが既に入力されています。

13_AS000648.jpg
ターゲットmbedの変更
 使用するmbedを選択します。
 LPC1768などを使用している場合は、

右上部分をクリック→ LPC1114FNに変更

LPC1114FNの画面→ SelectPlatform→ クリックして、確定

 
 

14_AS000635.jpg
ソース・プログラムの入力
 ひな形のプログラムを修正するか消去して、次のソース・プログラムを入力します。

// LPC1114FN Hello World

#include "mbed.h"
DigitalOut led(dp28);

#define ON 1
#define OFF 0

int main() {

  while(1){
    led=ON;
    wait(0.25);
    led=OFF;
    wait(0.25);
  }
}

 ソース・プログラムを入力→ 全て保存→ (最初に保存する場合、ファイル名をつける)→ 


15_AS000651.jpg

コンパイル
 ソース・プログラムからmbedに書き込むことができるbinファイルに変換することをコンパイルといいます。

コンパイル→ 全てコンパイル→


 ここでエラーが出た場合は、エラーが起こっているプログラムの部分を修正して再度コンパイルします。


web32.png
 コンパイルが成功すると次のダイアログが表示されます。

「・・・・開くか、保存しますか?」→ 保存→

web12.png

保存→ 名前を付けて保存(A)→ 



web123png.png

binファイルをmbedに書き込む

MBED(E:)選択→ 表示されているファイル名.binでOK→ 保存(S)→ アダプタの赤LEDが速い点滅→ mbedドライブウインドウが一瞬消えて再度表示される→ 書き込んだプログラムは表示されなくてOK→ 成功!



20_AS000656.jpg
うまく書き込めない場合:binファイルをデスクトップなどにいったん保存→ MBED(E:)ドライブにドラッグ→ アダプタの赤LEDが速い点滅→ mbedドライブ・ウインドウが一瞬消えて再度表示→ 書き込んだプログラムは表示されなくてOK→ をお試しください。
 書き込みアダプタにLPC1114FNをセットせずにパソコンに接続した場合に、mbedドライブ・ウインドウがピッという音と共にブリンクを繰り返す現象が筆者の環境で発生しました。このような場合、USBケーブルをパソコンから抜いて、1114FNをセットした状態で再度USBケーブルをパソコンに接続することで書き込むことができるようになりました。これでもだめな場合、パソコンを再起動後に挑戦してください。
Lチカの実行

 書き込みが完了したアダプタからUSBケーブルを抜いて、電源を接続→ LEDがチカチカ→ 成功! →だめな場合、アダプタのリセット・スイッチを押す



21_P1370192.jpg
 USBから供給されるバスパワーで動く場合もありますが、ここでは別電源とします。
単独動作に挑戦

電源を遮断→ アダプタを取り外す→ mbedが単独動作可能となる→



22_P1370220.jpg

電源接続→ LEDチカチカ→ 単独動作成功!



23_P1370214.jpg
 mbed LCP1114FNはmbedのクラウド環境にてプログラムの開発が可能です。この環境では高価なCコンパイラを無料で使うことができます。しかも、LCDや温度計測ユニットなど様々な周辺機器を使うことができるライブラリを世界中の開発者が公開してくれています。プログラムの完成後は、開発環境から切り離してLPC1114FN単独で動作させることが可能です。この素晴らしいLPC1114FNで様々な組み込み制御を楽しみましょう。

(2016/2/27 V1.0)

竹内浩一

バックグラウンド

mbedで使えるマイコン;mbedのクラウドはARM社が運営しています。現在、同社のアーキテクチャのマイコンがサポートされています。多くは、Cortex-Mシリーズのマイコンで、世界中の半導体会社の多くが製造しています。

パソコン環境:筆者のパソコンはWindows 10です。

ターゲット基板;センサやスイッチ類を実装した実際に動作させるボードのことです。

600mil;milは1/1000インチなので、リード線が15.2mm幅のIC。

連載メニュー DIPマイコンLPC1114FNでmbed入門

(1) mbedでLチカする手順

(2) サーボ・テスタの製作 ~その1~

(3) サーボ・テスタの製作 ~その2~

(4) 電圧と電流を同時に測れるVIメータの製作 ~その1~

(5) 電圧と電流を同時に測れるVIメータの製作 ~その2~