Arduino Unoのスケッチ例:点滅

オリジナルのコードでは、13番ピンを使用し、ボード上の小さなLEDが1000ミリ秒の間隔で点滅する連続ループを実現していました。このサンプルコードでは、内蔵の遅延関数を使用して、ループ関数内の各アクションの間に一時停止をかけています。この設定では、選んだピンでマイクロコントローラが機能するように、各ピンを定義する必要があります。

最初のサンプルコード

// the setup function runs once when you press reset or power the board
void setup() {
	// initialize digital pin 13 as an output.
	pinMode(13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(13, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}

初期コード配線図

これは、13番ピンのオンボードLEDを使用しています。以下の写真で、基板上の位置を確認できます。追加の配線は必要ありません。
image

拡張コード

私自身のちょっとしたプロジェクトのために、12番ピンにLEDと抵抗を追加し、13番ピンを遮断しました。そして、新しいLEDのタイミングを変えて、SOSの遭難信号をシミュレートしました。

// the setup function runs once when you press reset or power the board
void setup() {
	// initialize digital pin 13 as an output.
	pinMode(12, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
digitalWrite(12, HIGH); // turn the LED on (HIGH is the voltage level)
delay(250); // wait for quarter second
digitalWrite(12, LOW); //turn the LED Off ( Low is the voltage level)
delay(250); // wait for quarter second

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(250);              // wait for quarter second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(250);             // wait for quarter second  

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(250);              // wait for quarter half second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(250);             // wait for quarter half second

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(500);              // wait for a half second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(500);             // wait for half second  

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(500);              // wait for a half second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(500);             // wait for half second  

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(500);              // wait for a half second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(500);             // wait for half second    

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(250);              // wait for quarter  second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(250);             // wait for quarter second  

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(250);              // wait for quarter second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(250);             // wait for quarter second  

digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(250);              // wait for quarter second
digitalWrite(12, LOW);   //turn the LED Off ( Low is the voltage level)
delay(800);             // wait for 800 milli seconds - when it loops without longer delay it looks like it does a different pattern 

}

拡張コード配線図

Blink%20picimage

赤色のワイヤは12番ピンと、ブレッドボード上の「プラス」に接続されています。
赤色のワイヤは、330Ωの抵抗器と赤色のLEDに直列に接続されています。
オレンジ色のワイヤは、ArduinoのグランドとLEDのマイナスリードに接続されています。

部品表




カートへのリンク:Digi-Key - Fast Add






オリジナル・ソース(英語)