組み込みの世界では最も成功したプロセッサの1つ「ARM」を用いたマイコン開発にチャレンジします。クラウド開発環境「mbed」を使い、プログラムを書きながら回路をブレッドボードに実装、動作を確認しながらさまざまな内蔵デバイスの使い方をマスターしていきます。
これから十数回の予定でARMプロセッサーの中で最もエントリーレベルなマイクロコントローラーの1つ、「LPC1114FN28」(以下、LPC1114)を使ってマイコン開発の話をしていきたいと思います。
本連載では開発にクラウド開発環境「mbed」を用い(図1)、プログラムを書いてそれを動かす回路を理解し、それをブレッドボードに実装(図2)、実際に動作を確認しながらLPC1114のさまざまな内蔵デバイス(ペリフィラル)の使い方をマスターしていきます。
初回はマイコン開発の流れとマイコン開発でよく使う用語の説明、それとこの連載で用いるLPC1114のお話をしたいと思います。
⇒連載『「mbed」で始めるARMマイコン開発入門』のバックナンバーはこちら
ここではマイコン開発の概要と組み開発などでよく使う用語について説明します。一般的なプログラム開発は、プログラム開発と開発したプログラムは同じコンピュータで実行します。これをセルフ開発といいます。これに対して開発するコンピュータと実行するコンピュータが別々の場合をクロス開発といいます。この場合は開発する側のコンピュータを開発コンピュータまたはホストコンピュータと呼びます。これに対し実行するコンピュータの方をターゲットコンピュータと呼びます。
クロス開発はおもにマイコン開発でよく行われます。なぜならプログラムの開発にはコンパイラ、リンカー、エディタ、ライブラリなどの開発環境が必要だからです。またプログラムを編集するためにはキーボードやディスプレイ、それにコンパイルするためには性能の高いCPUや大容量のストレージも必要ですね。
一方、ターゲットとなるマイコンは最終的に電気機器や設備の一部として組み込まれますから、必要のないものは一切ついていませんし、メモリやCPUの能力も必要最小限のものが使われます。ほんの数本の入出力ピンのみということだって珍しくありません。マイコン開発ではターゲット側のコストを徹底的に下げるために開発側と実行側を分けるクロス開発が行われるのです。
昨今のインターネット常時接続の普及に伴い、マイコン開発の一部をクラウドに肩代わりさせる方法が注目されています。この連載で紹介するのもこの開発環境です。それでは従来のクロス開発環境とクラウド開発環境を比べてみましょう。
図3が従来のクロス開発環境です。開発環境があるコンピュータ(ホストコンピュータ)上のエディタなどで編集されたソースコード、いわゆる高級言語などで書いたプログラムをコンパイルし、ライブラリーファイルとリンクすることにより実行ファイルを生成します。この実行ファイルのことを「バイナリーファイル」または「ヘキサファイル」と呼びます。
これを書き込みソフトで書き込み器を介してターゲットマイコンのプログラム格納領域に書き込みます。書き込み器とホストコンピュータはUSBやRS-232Cあるいはパラレルケーブルなどで接続します。
これに対してクラウドを利用した開発環境(図1)ではWebブラウザさえあれば実行ファイルまでクラウド側で生成してくれるのです。従来のマイコン開発では開発環境を整えるだけで大変でしたが、クラウド環境を使うと手元に書き込み器と書き込みソフトさえ用意すれば誰でも組込開発の第一歩を踏み出すことができるのです。
LPC1114はオランダに本社を置く、NXPセミコンダクターが製造販売するマイコンです。ここで、これから長い付き合いになるであろうマイコンの紹介をしておきましょう。
なぜこのマイコンとして選んだかというと、まず価格が手ごろであること、次にピン間がDIPタイプ(マイコンから出ている足の間隔が0.1インチということです)であり、ブレッドボードに挿して使うのに最適だからです。最近のマイコンはSMD(表面実装デバイス)タイプが多く、これらをブレッドボードで利用するとなると、変換基板などを利用する必要がありますが、DIPタイプなら簡単です。
ブレッドボードを使うとハンダ付けすることなく、部品を差し込んでいくだけで回路を構成することができ、手軽に電子工作が始められます。本連載でも回路を構成するのにブレッドボードを用います(ブレッドボードの説明は「Scratch 2.0でフィジカルコンピューティング」も参考にしてください)。
そして最大の理由が、このマイコンがARMアーキテクチャを採用していることです。英ARMが開発するARMプロセッサですが、ARM自社では生産を行わず、IP(知的財産)を半導体メーカーにライセンスしています。日本はもとより全世界の半導体メーカーの多くがARMアーキテクチャを採用したプロセッサを生産しており、組み込みの世界では最も成功したプロセッサの1つといえるでしょう。
特にスマートフォンやタブレットはその多くが、ARMアーキテクチャのプロセッサを採用しており、普通に生活していれば家電も含めARMプロセッサの入っている機器に触らないで1日を過ごすことは難しいかもしれません。これから組み込みエンジニアを目指す皆さんにとって、決して避けては通れないプロセッサの1つであることは間違いないでしょう。
Copyright © ITmedia, Inc. All Rights Reserved.