まずは、スケッチの内容について
void
setup()
// run once, when the sketch starts
{
pinMode(11, OUTPUT);
// sets the digital pin as output
}
void
loop()
// run over and over again
{
digitalWrite(11, HIGH);
// sets the LED on
delay(
1000
);
// waits for a second
digitalWrite(11, LOW);
// sets the LED off
delay(
1000
);
// waits for a second
}
void setup() ・・・・英語でコメントされているように、はじめに一度だけ実行するときに
使うもの。
{ } で挟まれた命令を見ると、pinMode命令により11番pinをデジタルの
出力用として宣言している。
何度も宣言する必要は無いので、ここに書いたと理解しました。
void loop() ・・・・ループというぐらいなので、繰り返したいときに使うもの。
{ }で挟まれた命令を見ると、digitalWrite命令とdelay命令がそれぞれ
2回書かれています。
digitalWrite ・・・11がピン番号を示していて、HIGHが電気を流すこと、LOWが電気を
流さないこと。
ちゃんとした説明では、LEDに対して電位差をつくることで点灯させると
ありました。
delay ・・・1000は時間ですが、調べたら単位ms(ミリ秒)でした。1秒=1000ミリ秒な
ので、1000はちょうど1秒だけ次の命令を実行するのを待つっていう
ことになります。
100にして実験したら、人の目には早すぎて、ずっと点灯しているように
見えました。
void setup() や void loop() は、関数と言うそうです。いまいちピンとこないので、とりあえず、こういう形式で書くことを理解しOKとしました。
次に配線図について
Arduinoの11番pinからブレッドボードへ接続し、抵抗220Ω、赤いLEDをつなぎ、ArduinoのGNDへ配線します。
Arduinoの11番pinがプラスで、ぐるっと回ってきて、ArduinoのGND(グランド)へ戻ってくる感じです。
LEDには+-があり、逆につなぐと点灯しないので注意です。実際に逆につないでみました。たしかに点灯しなかった。足の長いほうが+です。右の絵で言うと右側が+です。
なぜ220Ωの抵抗を入れるのか、大きい電気が流れてLEDが壊れてしまうとのことでした。
なぜ、220Ωなのかは、計算式が記載されたWEBサイトを見ましたが、よくわからないからパスしました(笑)。
【今日の格言】
素人に怖いものは無い。分かる所まで理解したら次に行こう。
0 件のコメント:
コメントを投稿