1. ライブラリのインクルードとピン定義:
#include <IRremote.h>: IRremoteライブラリを読み込みます。
const int ...: 各コンポーネントが接続されているピン番号を定義しています。これにより、コードの可読性が向上し、ピンの変更が容易になります。
2. リモコンのボタンコード:
#define ...: ユーザーが指定した赤外線リモコンのHEXコードを、わかりやすい名前に定義しています。
3. setup() 関数:
pinMode(): 各ピンの役割(入力または出力)を設定します。
irrecv.enableIRIn(): 赤外線受信を開始します。
4. loop() 関数:
irrecv.decode(&results): 赤外線信号を受信し、成功した場合にtrueを返します。
switch (results.value): 受信したコードの値(results.value)に応じて、対応する動作を実行します。
irrecv.resume(): 信号の受信を再開します。
5. モータ制御関数:
goForward(), goBackward(), turnRight(), turnLeft(): 各モータのピンをHIGH/LOWに設定することで、進行方向を制御します。
stopMotors(): 両モータのピンをLOWに設定し、動きを止めます。
6. LED・スピーカー制御関数:
blinkLED(), blinkMultiLED(), blinkAllLEDs(): 指定された時間、LEDを点灯させます。
defaultAction(): その他のボタンが押された場合の動作で、モータの前進とスピーカーを同時に鳴らします。tone()関数で音を鳴らし、noTone()で止めます。
7. リセット機能:
resetArduino(): ソフトウェアでArduinoをリセットする機能です。直接的なハードウェアリセットは複雑なため、このコードではLEDの点滅でリセット状態をシミュレートしています。
このコードをArduino IDEに貼り付け、IRremoteライブラリがインストールされていることを確認してからアップロードしてください。
Licensed by Google
