Diese Seite ist auch in 2 anderen Sprachen verfügbar.
Sprache wechseln  

delayMicroseconds()

[Time]

Beschreibung

Hält das Programm für die als Parameter angegebene Zeit (in Mikrosekunden) an. Es gibt tausend Mikrosekunden in einer Millisekunde und eine Million Mikrosekunden in einer Sekunde.

Derzeit ist der größte Wert, der eine genaue Verzögerung erzeugt, 16383. Dies könnte sich in zukünftigen Arduino-Releases ändern. Bei Verzögerungen von mehr als einigen tausend Mikrosekunden sollte stattdessen delay() verwendet werden.

Syntax

delayMicroseconds(us)

Parameter

us: die Anzahl der Mikrosekunden, die angehalten werden sollen. Erlaubte Datentypen: unsigned int.

Rückgabewert

Nichts.

Beispielcode

Der Code konfiguriert Pin 8 als Ausgangspin. Er sendet eine Impulsfolge von ungefähr 100 Mikrosekunden. Die Annäherung beruht auf der Ausführung der anderen Anweisungen im Code.

int outPin = 8; // Digitalpin 8

void setup() {
  pinMode(outPin, OUTPUT); // Digitalpin als Output setzen
}

void loop() {
  digitalWrite(outPin, HIGH); // Pin auf HIGH setzen
  delayMicroseconds(50);      // 50 Mikrosekunden warten
  digitalWrite(outPin, LOW);  // Pin auf LOW setzen
  delayMicroseconds(50);      // 50 Mikrosekunden warten
}

Anmerkungen und Warnungen

Diese Funktion arbeitet im Bereich von 3 Mikrosekunden und mehr sehr genau. Wir können nicht garantieren, dass delayMicroseconds() genau für kürzere Verzögerungszeiten funktionieren.

delayMicroseconds() deaktiviert ab Arduino 0018 keine Interrupts mehr.

Siehe auch