Javaなどのプログラムで一番始めに作るプログラムは、画面上に「Hello, Wolrd」と表示するプログラムが定番です。
Arduinoの場合は、このHello, Worldに相当するプログラムがLEDを点滅させるプログラムのようです。LEDをチカチカさせるから、通称Lチカといいます。
LEDを光らせる回路
LEDを光らせるためにはArduinoとLEDを接続するための回路が必要になります。
ただ、Arduinoにはデフォルトで13番ポートにLEDがつながっているので、これを使いましょう。
自分で回路を作る場合は、次の図のように13番ポートとLED、抵抗(330Ω程度)を接続して下さい。
LEDには豆電球と違って極性があります。足の長い方をプラス側(今回の場合は13ピン側)に繋いで下さい。
LEDを点滅させるプログラム
Arduinoで出来ることは基本的に次の2つだけです。
・ポートから指定した電圧を出力する
・ポートに入力されているの電圧を調べる
どんな複雑に見える回路も、基本的にはこの2つの組み合わせで作られています。こう書くと、なんか、簡単そうに感じてきますね〜!
今回はLEDを点滅させたいので、指定したポート(13番)から0Vと5Vを交互に出力します。次のプログラムを入力して下さい。
void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); }
setup関数はプログラム起動時に一度だけ実行されます。loop関数は何度も実行される関数です。
pinMode関数で第一引数のポートを「出力」として使うか「入力」として使うかを指定しています。
ここではLEDがつながっている13番ポートを出力(OUTPUT)に指定しています。
loop関数では、「LEDを点灯」→「1秒停止」→「LEDを消灯」→「1秒停止」という処理を行っています。まずdigitalWrite関数を使って13番ポートの出力をHIGH(5V)にします。
続いてdelay関数を使って1秒間処理を止めています。delay関数の引数には処理を止める時間をms単位で指定します。
もう一度digitalWrite関数を使って13番ポートの出力をLOW(0V)にして1秒停止します。これを繰り返すことでLEDを点滅させています。
実行結果
上のプログラムを実行した結果がこちらになります。地味ですが自分の書いたプログラムでハードウエアを動かせると感動もひとしおですね〜