注釈
こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。
参加する理由は?
エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。
学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。
独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。
特別割引:最新製品の独占割引をお楽しみください。
祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。
👉 私たちと一緒に探索し、創造する準備はできていますか?[ここ]をクリックして今すぐ参加しましょう!
Arduinoプログラムの構造¶
新しいスケッチファイルを見てみましょう。数行のコードが書かれていますが、実際には「空の」スケッチです。 このスケッチを開発ボードにアップロードすると、何も起こりません。
void setup() {
// ここに初期設定のコードを記述し、一度だけ実行します:
}
void loop() {
// ここにメインのコードを記述し、繰り返し実行します:
}
setup() と loop() を削除して、スケッチを本当の blank ファイルにすると、検証に合格しないことがわかるだろう。
これらは人間の骨格に相当し、欠かせないものです。
スケッチ作成時には、まず setup() が実行され、ボードに電源が供給されたりリセットされたりした後、その内部のコード( {} 内部)が一度だけ実行されます。
loop() はメインの機能を書くためのもので、 setup() 実行後に繰り返し実行されるコードを内部に記述します。
setup() と loop() の理解を深めるために、以下の四つのスケッチを使用します。それぞれの目的は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を制御するためのもので、後の章でその使用方法を詳しく説明します。