Arduino millis() Funktion
-
Verwendung von die Funktion
millis()
zum die in Arduino verstrichene Zeit zu überprüfen -
Verwendung von die Funktion
millis()
zum eine LED in Arduino zu blinken -
Verwenden Sie die Funktion
millis()
, um die Helligkeit einer LED in Arduino zu ändern
In diesem Tutorial wird die Verwendung der Funktion millis()
in verschiedenen Anwendungen in Arduino erläutert. In diesem Tutorial werden auch einige Beispiele erläutert, um die Funktion millis()
besser zu verstehen.
Verwendung von die Funktion millis()
zum die in Arduino verstrichene Zeit zu überprüfen
Die Funktion millis()
gibt eine vorzeichenlose Variable vom Typ unsigned long
zurück, die die Anzahl der Millisekunden enthält, die vergangen sind, seit die Arduino-Karte mit der Ausführung des Codes begonnen hat. Da die zurückgegebene Variable vom Typ unsigned long
ist, läuft die Nummer nach 49 Tagen über und wird auf Null zurückgesetzt.
unsigned long currentTime;
void setup() { Serial.begin(19200); }
void loop() {
Serial.print("Time Stamp: ");
currentTime = millis();
Serial.println(currentTime);
delay(1000);
}
Im obigen Code ist currentTime
eine Variable vom Typ unsigned long
zum Speichern der Zeit. Überprüfen Sie diesen Link, um weitere Informationen zur Funktion millis()
zu erhalten.
Verwendung von die Funktion millis()
zum eine LED in Arduino zu blinken
In diesem Beispiel blinken wir eine LED mit der Funktion millis()
. Stellen Sie sich vor, Sie müssen eine LED für einen bestimmten Zeitraum, z. B. eine Sekunde, blinken lassen. In diesem Fall können Sie mit der Funktion millis()
die LED für eine bestimmte Zeit blinken lassen. Wenn Sie die LED mit der Funktion delay()
blinken lassen, wird auch Ihr Code angehalten, bis die Verzögerungszeit abgelaufen ist. Anstatt die Funktion delay()
zu verwenden, können Sie auch die Funktion millis()
verwenden, ohne dass Ihr Code angehalten wird.
unsigned long startTime;
unsigned long currentTime;
const unsigned long period = 1000;
const byte ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
startTime = millis(); // initial start time
}
void loop() {
currentTime = millis();
if (currentTime - startTime >= period) // test whether the period has elapsed
{
digitalWrite(ledPin,
!digitalRead(ledPin)); // if so, change the state of the LED.
startTime = currentTime;
}
}
In diesem Beispiel leuchtet die LED genau eine Sekunde lang. Sie können die Blinkperiode ändern, indem Sie den Wert der variablen Periode im obigen Code ändern.
Verwenden Sie die Funktion millis()
, um die Helligkeit einer LED in Arduino zu ändern
In diesem Beispiel verwenden wir die Funktion millis()
, um die Helligkeit einer LED zu ändern. Wir werden einen Zeitraum festlegen, nach dem die Helligkeit der LED erhöht wird. Zu diesem Zweck müssen wir eine LED mit dem PWM-Pin des Arduino verbinden. Wir können die Helligkeit mit der Funktion analogWrite()
auf die LED schreiben. Mit der Funktion analogWrite
können wir die LED-Helligkeit im Bereich von 0 bis 255 ändern.
unsigned long startTime;
unsigned long currentTime;
const unsigned long period = 10;
const byte ledPin = 10; // using an LED on a PWM pin.
byte LedBrightness = 0; // initial brightness
byte LedIncrement = 1; // amount to change the brightness
void setup() {
pinMode(ledPin, OUTPUT);
startTime = millis(); // initial start time
}
void loop() {
currentTime = millis();
if (currentTime - startTime >= period) {
analogWrite(ledPin, LedBrightness); // set the brightness
LedBrightness += LedIncrement;
startTime = currentTime;
}
}
In diesem Beispiel wird die LED-Helligkeit alle 10 Millisekunden erhöht. Sie können die Inkrementierungszeit ändern, indem Sie die variable Periode im obigen Code ändern.