Blog Archive

Arduino Indonesia. Gambar tema oleh Storman. Diberdayakan oleh Blogger.

Supported by Electronics 3 in 1

1. Jasa pencetakan PCB single layer dengan harga paling murah.

(Metode Pembuatan dengan Transfer Toner)
>PCB design sendiri (siap cetak) : Rp.150,-/Cm2
>PCB design dari kami : Rp.250,-/Cm2

(Metode Sablon Full Masking dan Silk Screen minimal pemesanan 100 Pcs)
>PCB design sendiri (siap cetak) : Rp.200,-/Cm2
>PCB design dari kami : Rp.250,-/Cm2

2. Jasa perancangan, perakitan, dan pembuatan trainer pembelajaran elektronika untuk SMK dan Mahasiswa.

3. Jasa perancangan, perakitan, dan pembuatan berbagai macam kontroller, sensor, aktuator, dan tranduser.
>Design Rangkaian / Sistem Elektronika
>Design Rangkaian / Sistem Instrumentasi
>Design Rangkaian / Sistem Kendali
>Kerjasama Riset (data atau peralatan)
>Kerjasama Produksi Produk-Produk KIT Elektronika
>Produksi Instrumentasi Elektronika

4. Jasa Pembuatan Proyek, Tugas Akhir, Tugas Laboratorium, PKM, Karya Ilmiah, SKRIPSI, dll

Like My Facebook

Popular Posts

Selasa, 07 Mei 2024

Panduan untuk Menggunakan Timer dan Interrupt dalam Arduino

Timer dan interrupt dalam Arduino sangat berguna dalam dunia pemrograman. Timer memungkinkan Anda untuk menjalankan kode pada waktu yang ditentukan, sedangkan interrupt memungkinkan Anda untuk merespons peristiwa eksternal secara langsung.


Baca juga : Kontrol Flow dalam Pemrograman Arduino: If, Else, dan Loop


Timer dalam Arduino


Timer adalah fitur yang memungkinkan Arduino untuk mengatur waktu dan mengeksekusi kode tertentu secara berkala. Ada tiga jenis timer yang umum digunakan dalam Arduino, yaitu Timer0, Timer1 dan Timer2. Ketiga timer tersebut memiliki presisi dan fungsi yang berbeda-beda.

1. Timer0

Timer0 digunakan untuk mengatur waktu dalam fungsi delay() dan millis(). Timer ini bekerja pada presisi 8-bit dan memiliki rentang waktu yang terbatas.

2. Timer1

Timer1 memiliki presisi 16-bit, memungkinkan Anda untuk mengatur waktu dalam rentang yang lebih luas daripada Timer0. Timer ini biasanya digunakan untuk aplikasi yang memerlukan presisi waktu yang tinggi.

3. Timer2

Timer2 memiliki presisi 8-bit dan sering digunakan untuk menghasilkan sinyal PWM (Pulse Width Modulation).

 

Panduan untuk Menggunakan Timer dalam Arduino

 

Sebagai contoh, jika Anda ingin menjalankan sebuah fungsi setiap 1 detik sekali, maka Anda dapat menggunakan Timer1 untuk menjalankan fungsi tersebut. Berikut ini contoh kode yang dapat Anda gunakan:

#include <TimerOne.h>

void setup() {

  Timer1.initialize(1000000);  // Inisialisasi Timer1 dengan periode 1 detik (dalam mikrodetik)

  Timer1.attachInterrupt(timerCallback);  // Menyambungkan fungsi timerCallback sebagai interrupt

}

void loop() {

  // Kode lainnya dapat ditempatkan di sini

}

void timerCallback() {

  // Kode yang akan dijalankan setiap 1 detik sekali

}


Pada contoh di atas, Anda menggunakan library TimerOne untuk mengatur Timer1. Fungsi initialize() digunakan untuk mengatur periode timer dalam mikrodetik. Setelah itu, Anda menggunakan attachInterrupt() untuk menentukan fungsi yang akan dijalankan ketika terjadi interrupt.

 

Interrupt dalam Arduino


Interrupt adalah mekanisme yang memungkinkan Arduino untuk merespons peristiwa eksternal secara langsung, seperti sinyal dari sensor atau tombol. Anda dapat membuat Arduino menjalankan kode tertentu ketika suatu peristiwa terjadi tanpa harus terus-menerus memeriksa kondisi tersebut dalam loop utama. Ada dua jenis interrupt yang umum digunakan dalam Arduino, yaitu external interrupt dan timer interrupt.

1. External Interrupt

External interrupt diaktifkan oleh perubahan status pin tertentu, seperti perubahan dari HIGH menjadi LOW atau sebaliknya. Arduino Uno memiliki dua pin (pin 2 dan pin 3) yang mendukung external interrupt.

2. Timer Interrupt

Timer interrupt diaktifkan oleh timer yang telah ditentukan sebelumnya. Timer interrupt memungkinkan Anda untuk menjalankan kode pada waktu tertentu tanpa harus terus-menerus memeriksa waktu dalam loop utama.


Panduan untuk Menggunakan Interrupt dalam Arduino

 

Berikut ini contoh kode sederhana jika Anda ingin menyalakan LED ketika tombol ditekan:

const int buttonPin = 2;

const int ledPin = 13;

void setup() {

  pinMode(buttonPin, INPUT);

  pinMode(ledPin, OUTPUT);

  attachInterrupt(digitalPinToInterrupt(buttonPin), buttonInterrupt, CHANGE);

}

void loop() {

  // Kode lainnya dapat ditempatkan di sini

}

void buttonInterrupt() {

  if (digitalRead(buttonPin) == HIGH) {

    digitalWrite(ledPin, HIGH);

  } else {

    digitalWrite(ledPin, LOW);

  }

}


 

Pada contoh di atas, Anda menggunakan external interrupt untuk menyalakan dan mematikan LED ketika tombol ditekan. Fungsi attachInterrupt() digunakan untuk menentukan pin yang akan digunakan untuk interrupt dan fungsi yang akan dijalankan ketika terjadi interrupt.

 

Jadi, menggunakan timer dan interrupt dalam Arduino membuat aplikasi menjadi lebih responsif dan efisien. Timer memungkinkan Anda untuk menjalankan kode pada waktu yang ditentukan, sedangkan interrupt memungkinkan Anda untuk merespons peristiwa eksternal secara langsung. Anda dapat membuat proyek Arduino yang lebih kompleks dan canggih dengan memahami konsep dasar dari timer dan interrupt. 


Baca juga : Penggunaan Variabel dan Tipe Data dalam Arduino

 

 

 

 

 

 

 

Siap Untuk Membuat Proyek Impianmu Menjadi Kenyataan?

Klik di sini untuk chat langsung via WhatsApp dan dapatkan dukungan langsung dari tim ahli kami!

 

0 on: "Panduan untuk Menggunakan Timer dan Interrupt dalam Arduino"