digitalWrite

動作

Arduinoボードのピンの出力電圧をデジタル制御します。

出力電圧のデジタル制御」とは、ピンの電圧をONにするかOFFにする、というイメージです。

出力電圧の値は、OFFの場合は0Vですが、ONの場合はArduinoボードにより異なります。

代表的なボードの電圧は以下になります。この電圧はArduinoボード仕様の「I/O電圧」や「動作電圧」という項目に記載されています。

ONのときの電圧代表的な純正ボード代表的な互換ボード
5VArduino Uno
Arduino Nano
Arduino Mega
Seeduino V4.3
Seeduino Nano
3.3VArduino Due
Arcuino Zero
Arduino MKRシリーズ
ESP8266
ESP32
Raspberry Pi Pico / Pico W
Seeduino XIAOシリーズ

主な用途

  • LEDの点灯・消灯制御
  • モーターのON・OFF制御
  • リレーの制御
  • 電子ブザーのON・OFF制御など
ポイント

digitalWrite関数は、電子部品をONまたはOFFする制御です。
(「ONとOFFの2つの状態の制御」=「デジタル制御」)

LEDの明るさ調整やモーターの回転速度制御などONとOFFの中間の制御(アナログ制御)はできません。そのような場合はanalogWrite関数を使います。

書式

digitalWrite(pin, value);
引数pin制御するピンを指定します。
ピン番号(10など)やピン名(A5)で指定します。
valueLOWまたはHIGHを指定します。
LOWは0V、HIGHは5V(または3.3V)の電圧をピンに出力します。
戻り値なし
補足

引数valueuint8_t型(符号なし8ビット)ですので、数値指定も可能です。

引数valueの数値の扱いは次のようになっています。

valueの値動作
00V出力(LOW指定と同じ動作)
1 〜 2555Vまたは3.3V出力(HIGH指定と同じ動作)

なお、LOW0HIGH1に定義されています。

使用例

次のコードにより、指定したピンの出力電圧をデジタル制御することができます。

digitalWrite(12, HIGH);  // ピン番号による指定 - 12ピンをONにする
digitalWrite(A5, LOW);   // ピン名による指定 - A5ピンをOFFにする

サンプルスケッチ

5番端子に接続したLEDを1秒ごとにONOFF制御するスケッチ例です。

ボタンをクリックするとシミュレーターが動作します。

スケッチを変更することもできます。変更した場合、シミュレーションを一度 ボタンをクリックして停止してから再度シミュレーターを開始してください。