注釈

こんにちは、SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Communityへようこそ!Facebook上で、仲間と一緒にRaspberry Pi、Arduino、ESP32をさらに深く探求しましょう。

なぜ参加するのか?

  • 専門的なサポート:購入後の問題や技術的な課題をコミュニティやチームの助けを借りて解決。

  • 学びと共有:スキルを向上させるためのヒントやチュートリアルを交換。

  • 限定プレビュー:新製品発表や予告編に早期アクセス。

  • 特別割引:最新製品の特別割引を楽しむ。

  • フェスティブプロモーションとプレゼント:プレゼントやホリデープロモーションに参加。

👉 私たちと一緒に探索と創造を始める準備はできましたか?[ここ]をクリックして、今すぐ参加しましょう!

変数

変数はプログラム内で最も強力で重要なツールの一つです。データをプログラム内に保存し、呼び出すのに役立ちます。

次のスケッチファイルでは変数を使用しています。オンボードLEDのピン番号を変数 ledPin に、数値「500」を変数 delayTime に保存します。

int ledPin = 13;
int delayTime = 500;

void setup() {
    pinMode(ledPin,OUTPUT);
}

void loop() {
    digitalWrite(ledPin,HIGH);
    delay(delayTime);
    digitalWrite(ledPin,LOW);
    delay(delayTime);
}

待ってください、これは #define と同じことをしているのではありませんか?答えはNOです。

  • ``#define``の役割は単にテキストを直接置き換えるだけであり、コンパイラによってプログラムの一部と見なされません。

  • 一方、 variable はプログラム内に存在し、値を保存して呼び出すために使用されます。変数はプログラム内でその値を変更することもできますが、defineではそれができません。

次のスケッチファイルは、変数に自己加算を行い、各点滅後にオンボードLEDが長く点滅するようにします。

int ledPin = 13;
int delayTime = 500;

void setup() {
    pinMode(ledPin,OUTPUT);
}

void loop() {
    digitalWrite(ledPin,HIGH);
    delay(delayTime);
    digitalWrite(ledPin,LOW);
    delay(delayTime);
    delayTime = delayTime+200; //Each execution increments the value by 200
}

変数を宣言する

変数を宣言するとは、変数を作成することを意味します。

変数を宣言するには、データ型と変数名が必要です。データ型は変数名とスペースで区切る必要があり、変数の宣言は ; で終わらせる必要があります。

この変数を例として使用しましょう。

int delayTime;

データ型

ここでの int は整数型と呼ばれるデータ型で、-32768から32767までの整数を保存できます。小数を保存することはできません。

変数は整数以外のさまざまなデータを保持できます。Arduino言語(つまりC++)には、いくつかの組み込みデータ型がサポートされています(ここでは最も頻繁に使用されるもののみを挙げています):

  • float: 小数を保存します。例:3.1415926

  • byte: 0から255までの数値を保存します。

  • boolean: True または False の2つの値のみを保持しますが、メモリ内ではバイトを占有します。

  • char: -128から127までの数値を保持します。 char としてマークされているため、コンパイラはそれを|link_ascii|の文字に一致させようとします。

  • string: 文字列を保存できます。例: Halloween

変数名

変数名は iappleBruceR2D2Sectumsempra など、好きな名前に設定できますが、いくつかの基本的なルールに従う必要があります。

  1. 使用目的を説明する名前にします。ここでは変数をdelayTimeと名付けたので、その目的が簡単に理解できます。変数を barryAllen と名付けても問題ありませんが、コードを見ている人を混乱させます。

  2. 一般的な命名規則を使用します。CamelCase delayTime やUnderScoreCase delayTime を使用して変数名を付けることができます。プログラムの実行には影響しませんが、好みの命名規則を使用するとプログラマーがコードを読みやすくなります。

  3. キーワードを使用しないでください。「int」などのキーワードを入力すると、Arduino IDEはそれを色分けして特別な目的を持つ単語であることを示し、変数名として使用できないことを示します。変数名が色分けされている場合は名前を変更してください。

  4. 特殊記号を使用しないでください。例えば、space、#、$、/、+、%などです。英字(大文字と小文字)、アンダースコア、および数字(ただし、数字は変数名の最初の文字として使用できません)の組み合わせが十分に豊富です。

変数に値を代入する

変数を宣言したら、データを保存する時が来ました。代入演算子(i.e. =)を使用して値を変数に入れます。

変数を宣言すると同時に値を代入することができます。

int delayTime = 500;

また、ある時点で新しい値を代入することもできます。

int delayTime; // no value
delayTime = 500; // value is 500
delayTime = delayTime +200; // value is 700