注釈
こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。
参加する理由は?
エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。
学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。
独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。
特別割引:最新製品の独占割引をお楽しみください。
祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。
👉 私たちと一緒に探索し、創造する準備はできていますか?[ここ]をクリックして今すぐ参加しましょう!
Arduino プログラムの構造
新しいスケッチファイルに目を通してみましょう。数行のコードが含まれているものの、実際には「空の」スケッチです。 このスケッチを開発ボードにアップロードしても、何も実行されません。
void setup() {
// 初期設定のコードはここに記述します。一度だけ実行されます:
}
void loop() {
// メインのコードはここに記述します。これは繰り返し実行されます:
}
もし setup() と loop() を削除してスケッチを真に「空白」にした場合、検証に失敗することに気付くでしょう。
これらは人間の骨格に相当し、欠かせない要素です。
スケッチ作成の過程で、 setup() が最初に一度だけ実行されます。開発ボードが電源投入またはリセットされた後、その中のコード( {} 内)が一度だけ実行されます。
loop() は主要な機能を実装するために使用され、 setup() 実行後にその中のコードは繰り返し実行されます。
setup() と loop() の動作をより深く理解するために、4つのスケッチを用いてみましょう。それぞれの目的は、Arduino のオンボードLEDを点滅させることです。各実験を順番に行い、その具体的な効果を記録してください。
スケッチ1:オンボードLEDを連続して点滅させる。
void setup() {
// 初期設定のコードはここに記述します。一度だけ実行されます:
pinMode(13,OUTPUT);
}
void loop() {
// メインのコードはここに記述します。これは繰り返し実行されます:
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
delay(500);
}
スケッチ2:オンボードLEDを一回だけ点滅させる。
void setup() {
// 初期設定のコードはここに記述します。一度だけ実行されます:
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
delay(500);
}
void loop() {
// メインのコードはここに記述します。これは繰り返し実行されます:
}
スケッチ3:オンボードLEDを一回ゆっくり点滅させ、その後速く点滅させる。
void setup() {
// 初期設定のコードはここに記述します。一度だけ実行されます:
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
}
void loop() {
// メインのコードはここに記述します。これは繰り返し実行されます:
digitalWrite(13,HIGH);
delay(200);
digitalWrite(13,LOW);
delay(200);
}
スケッチ4:エラーを報告する。
void setup() {
// 初期設定のコードはここに記述します。一度だけ実行されます:
pinMode(13,OUTPUT);
}
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
void loop() {
// メインのコードはここに記述します。これは繰り返し実行されます:
}
これらのスケッチを活用して、 setup-loop のいくつかの特性を総括することができます。
開発ボードが電源投入後、
loop()は繰り返し実行されます。開発ボードが電源投入後、
setup()は一度だけ実行されます。開発ボードが電源投入後、最初に
setup()が実行され、その後loop()が続きます。コードは
setup()またはloop()の{}スコープ内で記述する必要があり、フレームワークの外で書かれた場合はエラーとなります。
注釈
digitalWrite(13,HIGH) のような文は、オンボードLEDの制御に使用され、後の章でその詳細な使い方について説明します。