AVRやPIC等はそれ単体では動作せず、電源やその他周辺回路を作らなければいけません。
もっと手軽にマイコンの機能を使えたら便利ですよね。
そこでご紹介するのがマイコンボードであるArduinoです。
Arduinoならマイコンに必要な基本回路が備わっていて、しかも別途書き込み器も必要なくプログラムを書き込むことができるんです。
Arduinoのここがスゴイ
Arduinoはオープンソースハードウェアの為、その回路の詳細はネット上に公開されていて個人でもArduinoを作ろうと思えば作れますし、色々なところから互換機も販売されてるので出来るだけ安く購入したい場合の選択肢も多いと思います。
搭載されているマイコンがAtmelのAVRシリーズであるMegaシリーズでAVRマイコンを触った事がある方なら馴染み深いのではないでしょうか。
さらにボードはUSBでパソコンと接続するだけで認識され、書き込みや読み込みも出来ますから専用の書き込み器を必要とせずプログラムの書き込みが可能です。
Arduinoで出来ること
何でも出来ます!というのは言い過ぎですが実際かなりの事が出来ます。
その秘密はシールドというボードがあるからです。
シールドとは特定の機能に特化したボードで、液晶表示用のボードやMicroSDカードが載ったボード、Bluetooth通信を可能にするボード等他にも沢山のボードがあります。
それらを総称してシールドと呼びます。
そしてこのシールドはArduinoに積み重ねるように接続して自分好みのハードウェアを構築出来ます。
この組み合わせによって欲しい機能を実現した自分だけのArduinoを作ることが出来る訳です。
また純粋なマイコンボード以外にも特別な機能を持たせたArduinoも販売されています。
・Arduino Ethernet
イーサネット機能を持たせたボード
・Arduino BT
Bluetoothモジュールを搭載したボード
・CNCシールド
等があります。
プログラミング環境はArduino IDE
Arduinoの開発環境はArduinoが提供しているArduino IDEを利用して行います。
このArduino IDE上からプログラムのコンパイルから書き込みまですべて行える統合環境です。
プログラム言語はC言語ライクな言語で、C言語が分かる方なら比較的すんなり入れると思います。
マイコン単体ではハードウェアのペリフェラルを利用するのに面倒な初期化処理などが入って煩わしい物ですが、Arduino IDEでは初期化処理が簡単に行える様工夫されています。
また、LCD制御やLED制御、UART制御等欲しい機能に関してはすでにライブラリとして用意されていてやりたい事が比較的少ない手間で実現できます。
まとめ
Arduinoはネット上に沢山の情報があるので開発はしやすいと思います。
エントリー機としてはArduino UNOをおススメします。
このUNOを使用した記事や作例はとても多いので、あまり悩まず扱えると思いますよ。
シールドを組み合わせて自分だけのモジュールを作るも良いですし、シールド基板を自作してオリジナルモジュールを作るというのも楽しいですね。