So verwenden Sie DelayMicroseconds -Funktion - Arduino

So verwenden Sie DelayMicroseconds -Funktion - Arduino
Es gibt eine große Anzahl nützlicher Funktionen in der C/C ++ - Sprache, mit der der Arduino -Mikrocontroller programmiert wird. Solche Funktionen können die Implementierung des Projekts erleichtern, indem die Arbeit des Code vergleichsweise verständlicher wird. Eine der Funktionen, die stark helfen, die Logik des Programms zu erstellen, ist die DelayMicrosekunden () Funktion. Um zu verstehen, wie diese Funktion funktioniert, haben wir diese Funktion auf sehr umfassende Weise erklärt.

Was ist DelayMicroseconds () -Funktion in Arduino

Aus dem Namen der Funktion geht hervor, dass es verwendet wird, um die Arbeit von Arduino -Code für eine Zeit von Mikrosekunden des Benutzers zu stoppen. Diese Funktion ist nützlich, wenn das Programm entweder von außen Eingaben nimmt oder einige Geräte wie die Dely () -Funktion kontrolliert. Um die Funktion DelayMicroSeconds () zu verwenden, müssen wir der unten veröffentlichten Syntax folgen:

DelayMicrosekunden (Zeit in Mikrosekunden);

Um die DelayMicroSeconds () -Funktion zu verwenden.

Um zu veranschaulichen, wie wir die Funktion DelayMicroseconds () verwenden können, haben wir die beiden Beispielcodes gegeben, mit denen Sie die Verwendung dieser Funktion verstehen können.

Verwenden von DelayMicroseconds -Funktionen, um die LED schneller zu blinken

Um zu demonstrieren, wie diese Funktion den Fluss des Arduino -Codes innehielt, haben wir das Blink -Beispiel für LED verwendet. Im Folgenden haben wir den Code für den LED -Blink gegeben, in dem wir die LED gebrinzet haben, indem wir ihre Zustände mithilfe der Funktion DigitalWrite () geändert haben, und zwischen der Zustandsänderung haben wir die Verzögerung von Mikrosekunden gegeben.

void setup ()
PinMode (7, Ausgabe);/*Zuweisen des Arbeitsmodus des Pin, mit dem die LED angeschlossen ist*/

void Loop ()
DigitalWrite (7, hoch); / *Geben Sie der Funktion einen hohen Wert, um die LED einzuschalten */
DelayMicrosekunden (1000); /* Um die LED für eine Weile in hohem Zustand zu machen*//
DigitalWrite (7, niedrig); /*geben der Funktion einen niedrigen Wert, um die LED auszuschalten*/
Verzögerung (1000); /* Um die LED für eine Weile in niedrigem Zustand zu blinken lassen*//

Verwenden von Verzögerungsmikrosekunden, um den Impuls des Entfernungssensors zu erzeugen

Um die Impulse des Entfernungssensors zu erzeugen. Der Impuls wird erzeugt, indem der Triggerstift des Entfernungssensors hohe und niedrige Zustände verleiht, und zwischen der Änderung der Zustände haben wir die Verzögerung der Mikrosekunden gegeben.

Kurz gesagt, wir können sagen, dass wir den Impuls erzeugt haben, indem wir den Zustand des Triggerstifts mit einer Verzögerung unter Verwendung der DelyMicroSeconds () -Funktion änderten. Erzeugen von Impulsen können mehrere Zwecke dienen, von denen eines verwenden können, um die Entfernungen von Hindernissen von den jeweiligen Objekten zu messen, oder wir können die Geschwindigkeit der bevorstehenden Hindernisse messen. Um zu zeigen, wie wir einen Impuls von wenigen Mikrosekunden erzeugen können, haben wir den jeweiligen Arduino -Code unten angegeben:

int trig = 7; // Arduino Pin für Trigger Pin if Senor
int echo = 6; // Arduino Pin für Echo -Sensorstift
float d, dist; // Variable, die die Dauer und den Abstand berechnet speichert
void setup ()
Serie.Beginnen Sie (9600); // Kommunikationsrate für die serielle Kommunikation
// Arbeitsmodi für den Trigger und den Echo -Pin des Sensors geben
PinMode (Trig, Ausgabe);
PinMode (Echo, Eingabe);

void Loop ()
// Impuls von 10 Mikrosekunde erzeugen
DigitalWrite (Trig, hoch);
DelayMicrosekunden (1000); // Zeit in Mikrosekunden
DigitalWrite (Trig, niedrig);
Verzögerungsmikrosekunden (1000); // Zeit in Mikrosekunden
DigitalWrite (Trig, hoch);
DelayMicrosekunden (1000); // Zeit in Mikrosekunden
DigitalWrite (Trig, niedrig);
D = Pulsein (Echo, hoch); // die Dauer des Pulses finden
dist = ((d/2)/29.1); // Berechnung des vom Impuls bedeckten Abstands
// Druckentfernung auf dem Serienmonitor
/* Serie.print ("Distanz:");
Serie.print (dist);
Serie.println ("cm");*/
Verzögerung (500);

Die vom Entfernungssensor erzeugten Impulse sind im Bild unten zu sehen:

Abschluss

Die DelayMicroSeconds () -Funktion wird verwendet, um den vom Benutzer angegebenen Mikrosesekunden für eine Zeit in Mikrosekunden zu pausieren. Es unterscheidet sich von der herkömmlichen Verzögerungsfunktion, da die Verzögerungsfunktion die Werte in Millisekunden nimmt, die größer sind als Mikrosekunden. Wir können also sagen, dass wir den Arduino -Code, um eine winzige Pause für den Arduino -Code zu verleihen.