digitalWrite関数
digitalWrite関数は指定したピンにHIGH(UNOは5V)もしくはLOW(0V)を出力します。
試しにこのプログラムをArduino UNOで実行すると、13ピンのLEDが1秒未満の周期で不規則に点滅します。
void setup() { //一回だけ実行する pinMode(13, OUTPUT); //LEDを接続した13番ピンを出力用に設定する } void loop() { //{}内を無限ループで実行する int i = random (1000); //iに0~999の間で発生させた乱数を代入する。 digitalWrite(13, HIGH); //LEDが接続された13番ピンをHIGH(5V)にする delay(i); //iミリ秒LEDを点灯した状態で止める digitalWrite(13, LOW); //LEDが接続された13番ピンをLOW(0V)にする delay(1000 - i); //1000-iミリ秒LEDを消灯した状態で止める }
図1:プログラム例
digitalWrite(pin, value)のパラメータ
pin :設定したいピンの番号を指定します
補足 :指定したピンがINPUT(入力)に設定されている場合は、HIGHを出力すると内部の20kΩプルアップ抵抗が有効になり、LOWで無効になります。通常プルアップ抵抗を有効にする場合はpinMode(pin,INPUT_PULLUP)と指定します。