Cara menggunakan atau mengakses fungsi millis dan map pada Arduino


Assalamulaikum warahmatullahi wabarakatuh

Mengakses fungsi millis arduino
     
     Fungsi millis adalah suatu fungsi untuk mengakses suatu timer yang ada pada Arduino, penggunaan millis ini berbeda dengan penggunaan fungsi delay pada arduino. Fungsi delay digunakan untuk menunda proses 1 ke proses yang lain dimana pada saat penunda proses lain tersebut tidak ada proses yang dilakukan arduino. sedangkan fungsi millis lebih melakukan perhitungan waktu.

     Fungsi millis ini bisa digunakan untuk menghitung lama proses atau waktu proses suatu pembacaan sensor, lama proses suatu perhitungan matematik, menjadwalkan eksikusi suatu proses atau program, dan juga melakukan tundaan pengeksikusian suatu program atau proses namun dapat melakukan proses lainya (seperti melakukan multi tasking)…..

        Berikut contoh program penjadwalan eksikusi suatu proses atau program dengan menggunakan millis…

code millis:

/*
>>>kampungtongah.blogspot.com
>>>tongah tech
>>>penjadwalan eksikusi program per 5 detik
*/

unsigned long time;
unsigned long timeCek;

void setup(){
}

void loop(){
    time = millis();
    if ((time - timeCek) >= 5000) {
    // masukkan program yang akan di eksikusi
    timeCek = time;
    }
}

         Dengan menggunakan program millis seperti di atas dapat teman - teman coba untuk melakukan tundaan terhadap suatu akuator namun masih tetap dapat membaca sensor.

Mengakses fungsi map Arduino.


        Fungsi map pada arduino berguna untuk memanipulasi range data, misal ada data yang memiliki range dari 0 – 1023 akan diubah menjadi 0 – 255, maka teman – teman dapat dengan mudah melakukan manipulasi data tersebut tanpa harus membuat proses matematiknya yaitu dengan menggunakan fungsi map ini.

Berikut contoh program penggunaan fungsi map untuk mengatus dimmer led dengan potensio meter:

code:

#define led 9
#define potensio A0

void setup() {
   pinMode(led, OUTPUT);
   pinMode(potensio, INPUT);
}

void loop() {
   int value = analogRead(potensio);
   value = map(value, 0, 1023, 0, 255);
   analogWrite(led, value);
}

      Dapat dilihat program di atas kenapa harus menggunakan fungsi map yaitu karena inputan analaog arduino adalah 10 bit atau sama dengan 0-1023 sedangkan untuk keluaran analog arduino itu adalah 8 bit ( 0 – 255) maka dari itu kita terlebih dahulu melakukan manipulasi data yaitu merubah range dari 0 – 1023 menjadi 0 – 255.

yok langsung dicoba

semoga dapat membantu…..

Comments

Post a Comment

Popular posts from this blog

Menggunakan Driver Motor IBT-2 BTS7960 dengan arduino

Register-Register pada CPU--> Arsitektur komputer

Komunikasi Serial pada Arduino