Timer Overflow adalah pengubah alihan sebuah fitur bernama Timer/Counter pada sebuah Mikrokontroler sehingga dapat menjalankan dua perulangan berbeda pada satu waktu yang sama.
Penggunaan Timer Overflow memungkinkan kita untuk membuat sebuah program yang dapat melakukan hal lain ketika perulangan inti berjalan (Mutitasking). Timer Overflow pada dasarnya memerlukan sebuah konfigurasi register untuk masing-masing pengaturannya yang bisa kita bahas dilain waktu tetapi pada Arduino IDE sendiri telah tersedia library yang bisa digunakan untuk mengaktifkan Timer Overflow tanpa harus konfigurasi register secara manual. Saya sendiri sudah pernah menggunakan fitur ini pada salah satu tutorial pada blog ini yaitu pada Antarmuka Sensor DHT11 dengan Delphi (Bagian 2). Pada tutorial tersebut saya menggunakan Timer Overflow untuk memisahkan proses antara pembacaan sensor DHT11 dan proses pengiriman data dari Arduino ke PC. Lebih jelasnya daripada kita berbicara tanpa dasar lebih baik kita bahas tentang program tersebut.
Library :
Sketch Program Arduino : Unduh
Penjelasan Program
#include <DHT.h> = Library yang digunakan untuk membaca sensor DHT11
#include <TimerOne.h> = Library untuk mengaktifkan fitur Timer Overflow
Timer1.initialize(1000000); = Inisialisasi Timer1 untuk melakukan perulangan setiap 1detik
Timer1.attachInterrupt(kirim); = Melampirkan fungsi (kirim) untuk diulang setiap 1detik
void kirim() = Fungsi yang dilampirkan pada Timer1
{
kirimdata(t, h); = Isi dari fungsi (kirim)
}
void kirimdata(int suhu, int lembab) = Fungsi yang berisi perintah untuk mengirim data ke PC
{
String temp = String (suhu); = Pengkonversian tipe data int ke String untuk data Suhu
String humi = String (lembab); = Pengkonversian tipe data int ke String untuk data Kelembaban
Serial.print(temp+"#"+humi); = Pengiriman data ke PC yang telah dikonversi ke String dalam bentuh utuh (temp#humi)
}
Flowchat Timer Overflow
Semoga yang saya sampaikan kali ini mudah kalian mengerti. Terima kasih atas kunjungannya.
Keyword :
Cara menggunakan Timer Overflow pada Arduino
Program Multitasking pada Arduino
Cara menggunakan library TimerOne
Cara meggunakan fitur Timer Overflow tanpa Register
Timer1 Overflow Arduino Uno
Tidak ada komentar:
Write komentar