Fungsi Millis Pada Arduino
Apa itu Millis Arduino?
Millis Arduino adalah suatu fungsi pada sintak Arduino yang berguna untuk menjalankan waktu internal setiap milli seconds pada Arduino secara independent. ketika millis di baca maka millis akan terus menghitung waktu walau pun Arduino nya sedang menjalan kan program yang lain. Karena fungsi ini, Millis juga dapat digunakan sebagai multi tasking nya Arduino. Misal nya program sedang menjalan kan Motor, namun Led juga berkedip setiap tiga detik. Ketika teman-teman mencoba memprogram Arduino, maka teman teman akan paham bagaimana cara kerja program yang di jalan kan.
Pewaktu dengan fungsi millis()
millis() Arduino adalah menghitung waktu secara terpisah setiap milli seconds ( atau 1 / 1000 detik)
Mari kita berpikir tentang waktu . Sebagai contoh kita ingin menghidupkan dan mematikan LED selama 500ms ( setengah detik ) tanpa menggunakan fungsi delay. Apakah bisa? Bagaimana cara nya menggunakan millis ini sebagai pewaktu? Bagaimana kah contoh nya, yuk kita lihat lagi contoh program nya di bawah ini,
?
unsigned long interval=1000; // the time we need to wait
unsigned long previousMillis=0; // millis() returns an unsigned long.
bool ledState = false; // state variable for the LED
void setup() {
pinMode(13, OUTPUT);
digitalWrite(13, ledState);
}
void loop() {
unsigned long currentMillis = millis(); // grab current time
// check if "interval" time has passed (1000 milliseconds)
if ((unsigned long)(currentMillis - previousMillis) >= interval) {
ledState = !ledState; // "toggles" the state
digitalWrite(13, ledState); // sets the LED based on ledState
// save the "current" time
previousMillis = millis();
}
}