#触ったきっかけ
ニコニコ超会議というイベントで見た電子工作が面白そうだったから。
電子工作初挑戦です。
#目標
とりあえず動く環境を作り、Lチカと呼ばれるHello,World的なモノをできるようにする。
#準備
amazonで道具を購入。
http://www.amazon.co.jp/gp/product/B00BQSTYZW
ArduinoIDEのダウンロード(windows用)
http://arduino.cc/en/Main/Software
IDEをインストールするとIUSBドライバも入るので先にインストールを済ませてからつなぎましょう。
#IDEを触ってみる
####マイコンボード/シリアルポートを設定をする
[ツール] -> [マイコンボード]から接続しているボードを選択。
私の場合はデフォルトで繋いだものが選択されてました。
[ツール] -> [シリアルポート]から接続しているポートを選択。
1つしか選択肢が無かったので解りましたが、解らない場合はUSB接続の情報を見ると解るらしい。
####サンプルコードを実行する
ArduinoIDEには多くのサンプルコードが入っています。
当然、Lチカのコードも入ってるので実行してみる。
- サンプルコードを開く
[ファイル] -> [スケッチの例] -> [01.Basics] -> [Blink]
新しいウィンドウが生成されてコードが表示されます。
- マイコンボードにプログラムを転送する
右向きの矢印マークがボード書き込みボタンです。
書き込みを開始すると下のコンソールに状態が表示されます。変更していないので必ず正常に終了するはずです。
プログラムは書き込み完了時点で実行されます。
今回のサンプルは1秒間隔でボード上のLEDが点滅するコードなので、実際に実行されているのを目視確認します。
####サンプルコードを理解する
サンプルコードに書かれているのはコメントを除くと以下のとおりです。
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
プログラム経験があるとすぐに予想がつきます。
void setup()
まずコレ。setupというその名の通り起動時に実行されるメソッドです。必ず実装しないといけません。
pinmode(num, mode)
ピンのモード設定をするメソッドです。設定できるモードはINPUT、OUTPUT、INPUT_PULLUPの3つです。
INPUTは入力、OUTPUTは出力、INPUT_PULLUPは内部のプルアップ抵抗を有効にするモードとのこと。
プルアップ抵抗とはなんぞや?となったのでググってみましたが、ピンと来ないので一旦飛ばして起きます。
参考記事:http://mag.switch-science.com/2013/05/23/input_pullup/
void loop()
こちらも名の通り、ループ処理をするメソッドです。これも必須メソッドで、loop()の処理が実行され続けます。
digitalWrite(pin, value)
特定のピンへ出力をするメソッドです。今回は13番ピンへHIGHもしくはLOWの出力を行っています。
HIGHのときは5V(3.3Vのボードでは3.3V)の電圧が、LOWの時は0Vの電圧がかかります。
delay(m/s)
指定した時間(マイクロ秒単位)プログラムの実行を止めます。
他のプログラミング言語にもある機能と同じように、あらゆる処理が止まるので使うときは気をつけてねとの注意書きがリファレンスにありました。
これで使っているメソッドはすべて説明できたのでこの処理は理解出来ました。
次は実際に自分でコードと回路を組んで実行してみようと思います。