Minggu, 23 Februari 2025

Blink Without Delay

Berkedip Tanpa Penundaan

Mengedipkan LED tanpa menggunakan fungsi delay()

Terkadang Anda perlu melakukan dua hal sekaligus. Misalnya, Anda mungkin ingin mengedipkan LED saat membaca penekanan tombol. Dalam kasus ini, Anda tidak dapat menggunakan delay(), karena Arduino menjeda program Anda selama delay() Jika tombol ditekan saat Arduino dijeda menunggu delay() untuk lolos, program Anda akan melewatkan penekanan tombol.

Sketsa ini menunjukkan cara mengedipkan LED tanpa menggunakan delay() . Ia menyalakan LED dan kemudian mencatat waktu. Kemudian, setiap kali melalui loop(), ia memeriksa apakah waktu kedip yang diinginkan telah lewat. Jika sudah lewat, ia akan menyalakan atau mematikan LED dan mencatat waktu yang baru. Dengan cara ini, LED berkedip terus-menerus sementara eksekusi sketsa tidak pernah tertinggal pada satu instruksi.

Analoginya seperti memanaskan pizza di microwave, dan juga menunggu email penting. Anda menaruh pizza di microwave dan mengaturnya selama 10 menit. Analoginya seperti menggunakan delay() akan duduk di depan microwave sambil memperhatikan penghitung waktu mundur dari 10 menit hingga penghitung waktu mencapai nol. Jika email penting tiba selama waktu ini, Anda akan melewatkannya.

Apa yang akan Anda lakukan dalam kehidupan nyata adalah menyalakan pizza, lalu memeriksa email, dan mungkin melakukan hal lain (yang tidak memakan waktu terlalu lama!) dan sesekali Anda akan kembali ke microwave untuk melihat apakah penghitung waktu telah mencapai nol, yang menunjukkan pizza Anda sudah matang.

Dalam tutorial ini Anda akan mempelajari cara mengatur pengatur waktu yang serupa.

Perangkat Keras yang Diperlukan

·         Papan Arduino

·         LED

·         Resistor 220 ohm

Sirkuit

Untuk membuat rangkaian, hubungkan salah satu ujung resistor ke pin 13 pada papan. Hubungkan kaki panjang LED (kaki positif, disebut anoda) ke ujung resistor lainnya. Hubungkan kaki pendek LED (kaki negatif, disebut katoda) ke GND papan, seperti yang ditunjukkan pada diagram di atas dan skema di bawah.

Sebagian besar papan Arduino sudah memiliki LED yang terpasang pada pin 13 pada papan itu sendiri. Jika Anda menjalankan contoh ini tanpa perangkat keras yang terpasang, Anda akan melihat LED tersebut berkedip.

Skema

Setelah Anda membangun sirkuit, hubungkan papan Anda ke komputer, jalankan Perangkat Lunak Arduino (IDE), dan masukkan kode di bawah ini.

Desain PCB

Kode Contoh

Anda bisa melakukan langkah seperti dibawah ini 

Kode

Kode di bawah ini menggunakan fungsi millis() , perintah yang mengembalikan jumlah milidetik sejak papan mulai menjalankan sketsa saat ini, untuk mengedipkan LED.

 

 Pelajari lebih lanjut

Anda dapat menemukan tutorial yang lebih mendasar di bagian contoh bawaan .

Tidak ada komentar:

Posting Komentar