Jika Anda seorang perancang elektronik profesional kemungkinan bos Anda tidak akan membiarkan Anda melakukannya dalam perangkat keras. Alasannya sederhana: jika kumpulan produksi Anda adalah perangkat lunak yang cukup besar sebenarnya gratis , sedangkan perangkat keras harus dibayar untuk setiap unit yang Anda hasilkan. Dan sementara resistor dan kapasitor sangat murah, memasangnya pada PCB mungkin berharga hingga 20 kali lipat dari harga pembelian mereka.
Apakah Anda melakukan debounce pada perangkat lunak atau perangkat keras, Anda masih harus memilih tombol kualitas. Tombol 157ms yang terkenal dari artikel sama sekali tidak cocok untuk aplikasi apa pun .
Saya biasanya mencicipi tombol pada interval 32ms , yang cukup untuk menjembatani waktu debounce dari tombol yang bagus. Saya penggemar berat Alps Switch SKQG TACT.
Pada beberapa perangkat yang saya uji memiliki waktu pentalan awal kurang dari 10ns. Sementara itu memiliki masa operasi 100 000 siklus, kami mengujinya untuk 200 000 siklus dan bahkan kemudian 32ms debounce sudah cukup. (Saya kira saya seharusnya mengukur tingkat debounce yang sebenarnya, tetapi minat utama kami pada saat itu adalah perilaku produk akhir. Bagaimanapun, kami menggunakannya di luar spesifikasi.)
Jika Anda benar-benar menginginkan solusi perangkat keras, saya berikan solusi SR flip-flop yang disebutkan dalam artikel sebagai solusi terbaik secara teknis:
Flip-flop dapat dibangun dengan gerbang NAND ganda , yang tersedia dalam paket VSSOP8 kecil, misalnya. Kelemahan utama dari solusi ini adalah Anda memerlukan tombol tekan SPDT, di mana SPST jauh lebih umum tersedia.