Pauses the program for the amount of time (in microseconds) specified as parameter. There are a thousand microseconds in a millisecond, and a million microseconds in a second.

Currently, the largest value that will produce an accurate delay is about 4000000. This could change in future 86Duino releases. For delays longer than a few seconds, you should use delay() instead.




us: the number of microseconds to pause (unsigned int)



Example Code

int outPin = 8;                 // digital pin 8
void setup()
  pinMode(outPin, OUTPUT);      // sets the digital pin as output
void loop()
  digitalWrite(outPin, HIGH);   // sets the pin on
  delayMicroseconds(50);        // pauses for 50 microseconds      
  digitalWrite(outPin, LOW);    // sets the pin off
  delayMicroseconds(50);        // pauses for 50 microseconds      

configures pin number 8 to work as an output pin. It sends a train of pulses with 100 microseconds period.

Caveats and Known Issues

In general, this function works accurately in the range 1 microsecond and up. But since delayMicroseconds() doesn’t disable interrupts, we cannot assure that it will always perform precisely for smaller delay-times.

See also

Language Reference Home

86Duino のリファレンスのテキストは Arduino レファレンス を編集したもので、 Creative Commons Attribution-ShareAlike 3.0 License下でライセンスされています。リファレンス内のコードサンプルはパブリックドメインとして公開されています。