Jika Anda pernah membuat aplikasi mikrokontroler yang memanfaatkan saklar atau tombol-tekan (pushbutton), tentunya Anda akan menghadapi masalah bouncing (dalam bahasa jawanya mentul-mentul) pada saklar atau tombol tersebut. Artinya, saat Anda menekan tombol tersebut, mikrokontroler mendeteksi adanya penekanan berkali-kali, padahal, sekali lagi, Anda hanya menekan sekali saja! Hal ini bisa dijelaskan melalui gambar 1.
Gambar 1. Diagram pewaktuan saat terjadi perubahan dari 1 ke 0
Dari Gambar 1 tersebut terlihat jelas bahwa saat terjadi perubahan tombol dari 1 ke 0 (ilustrasi kiri), akan terjadi bouncing berulang-ulang selama 0.01 hingga 100 milidetik (ilustrasi tengah). Mikrokontroler akan menganggap terjadi perubahan dari 1 ke 0 berkali-kali (ilustrasi kanan).
Rangkaian RC
Solusi sederhana untuk masalah bouncing ini adalah menggunakan rangkaian RC yang akan menekan terjadi perubahan tegangan secara cepat. Karena waktu bouncing tidak dinyatakan, nilai-nilai komponen bisa bervariasi. Pada Gambar 2 ditunjukkan sebuah rangkaian RC untuk mencegah bouncing dengan nilai-nilai komponen yang biasa digunakan.
Gambar 2. Rangkaian RC untuk mencegah bouncing
Flip Flop Debounce
Jika diinginkan keamanan penuh, perlu diperhatikan hal-hal berikut! Rangkaian yang menggunakan RS Flip-flop, yang ditunjukkan pada Gambar 3, akan mengubah kondisi logika luarannya pada saat pulsa pertama yang dipicu saat terjadi bouncing pada saklar. Walaupun solusi lebih mahal (karena menggunakan saklar SPDT), namun masalahnya teratasi dengan baik! Selain itu, rangkaian ini tidak membutuhkan kondensator.
Gambar 3. Rangkaian Flip Flop Debounce
Solusi Perangkat Lunak
Selain solusi perangkat keras, suatu solusi perangkat luas juga biasa dilakukan: saat program menguji suatu kondisi beberapa luaran dan menemukan adanya perubahan, serta merta pengujian harus melakukan penundaan beberapa saat hingga perkiraan bouncing selesai. Kelebihannya? Jelas sekali murah meriah (tidak ada implementasi rangkaian), selain itu bisa diadaptasi untuk saklar atau tombol yang berkualitas buruk sekalipun. Kelemahannya? Sama seperti rangkaian RC, perubahan logika yang lebih cepat dari tundaan program tidak bisa terdeteksi.
Semoga bermanfaat.
Tags: bouncing, Mikrokontroler
May 21st, 2009 at 2:43 pm
masss minta tolong dong
gimana cara progam assembley untuk kasus counter 7 segmen dengan inputan dari tombol….????
mohon banget…
June 29th, 2009 at 6:36 pm
makasih mas……
bermanfaat sekali ni penjelasannya,,
November 12th, 2009 at 9:19 pm
mas, apa saja akibat bouncing ??? lalu bouncing sendiri apa saja yang menyebabkan??
November 13th, 2009 at 1:06 pm
@pande:
konsep dasarnya sudah saya tulis di buku saya “Belajar mikrokontroler at89c51/52/55″…
November 13th, 2009 at 1:07 pm
@gent:
efek dari bouncing bahwa mikrokontroler akan menganggap ada penekanan tombol lebih dari sekali… bouncing disebabkan karena mekanik dari pushbuton itu sendiri…
December 8th, 2010 at 4:45 pm
Siph2… Elka Orra Aristo Bermanfaat Euy
September 20th, 2016 at 8:31 am
Thanks
October 12th, 2017 at 8:24 am
selamat pagi mas,
saya ingin bertanya. kalau pakai arduino bagaimana cara menghilangkan bouncing pada rangkaian driver relay nya mas? soalnya sewaktu saya compile arduinonya, belum ada perintah masuk, eh driver nya sudah aktif duluan. terima kasih
February 27th, 2018 at 9:15 am
mengapa rangkaian tombol perlu diberi kondensator (C1)
sebagai debouncer.
April 6th, 2018 at 1:27 pm
Sangat bermanfaat nih pak
April 10th, 2018 at 11:48 pm
terima kasih pak sngat membantu tugas saya
May 16th, 2018 at 2:27 pm
thank you for sharing it’s so helpful
July 17th, 2018 at 6:59 am
Kak kenapa ya rangkaian counter up Dan down saat dibuat di pcb keluar angkanya loncat-loncat padahal di simulasinya keluarnya stabil…..
Saya pakai ic 74192 (countet) dan 7447 (decoder)
December 13th, 2018 at 1:24 pm
terimakasih sangat membantu
August 6th, 2019 at 11:46 am
Amazing article. I have very glad to read your article. You are a really brilliant person. I have read your full article and I have got much important news that was very helpful to me. Thanks a lot for sharing a nice article. For portrait photography, e-commerce business, Photoshop needs product photo editing making images pop up. We provide all kinds of high-quality photo editing services at a competitive price from Clipping Expert Asia. That helps to make your e-commerce business pop-up. If you want to get a high-quality photo editing service can you visit Clipping Expert Asia.
August 29th, 2019 at 7:16 pm
The simple solution to this bounce problem is to use an RC circuit that will suppress the voltage change quickly.
January 19th, 2020 at 8:54 pm
top site betting
April 5th, 2020 at 9:03 pm
top site betting football
April 7th, 2020 at 7:49 pm
سایت انفجار شرط بندی ولف بت
April 7th, 2020 at 7:49 pm
بازی انفجار شرط بندی