Gösterdiğiniz gibi dirençli bağlantı pedleri kullanmak mümkündür, ancak kapasitif pedler genellikle daha iyidir. Dirençli balatalar, devreye doğrudan açık bir bağlantıyı bırakır. Bu nedenle statik deşarj ve gürültüden kaynaklanan hasara karşı hassastırlar.
Kapasitif pedler daha iyi bir yöntemdir, ancak en azından iyi yapmak istiyorsanız, algılamak için biraz daha bellenim gerektirirler. Temel gürültü bağışıklığını bile elde etmek için, dirençli pedlerin de ürün yazılımı gerektirdiğini unutmayın. İki yastığı bir FET kapısı gibi hassas bir şeye bağlamak kötü bir fikirdir. Ortak modu ve diğer ortam gürültülerini iptal edemezsiniz.
İşte son zamanlarda sadece kapasitif düğmeleri araştırmak için yaptığım küçük bir tahta düzeni:
Kapak pedleri, çapı 150 mil (3.8 mm) olan küçük disklerdir ve başka bir şekilde üst tabaka üzerinde toprak ile çevrelenmiştir. Mikrodenetleyici bir PIC 16LF1786'dır. Bu ve kullanıcı ile doğrudan arabirim oluşturmayan diğer tüm parçalar, bu iki katmanlı kartın altına monte edilir.
PIC sürekli olarak pedleri tarar. Bir pedin basılan / bırakılan duyusunda bir değişiklik tespit ettiğinde, seri port üzerinden bir mesaj gönderir, sağ üstteki ışıkları günceller ve bir basımda bip sesi çıkarır.
Test için PIC'in her bir pedin presliği için dahili değerlerini düzenli olarak göndermesini sağlayabilirim. İşte her ham pedi parmağımla art arda bastığımda, bir şey basılan dijital duruma ek olarak beş ham duyu değerinin de bir grafiği:
Gördüğünüz gibi, gürültü bağışıklığı olağanüstü. En zayıf sinyal bile 300'ün üzerindeyken, gürültü ± 2 ya da öyleydi.
"Basılı" etiketli macenta iz, ayrı ayrı basılan durumların OR değerini gösterir. Seviyeleri basın ve bırakma eşiklerini gösterir. Bu durumda kullanılmayan çok fazla sinyal var. Bu özel eşikler, düğmelerin üzerinde birkaç kağıt katmanını tolere edebilmek için ayarlandı.
Tabii ki kendim de söylesem bile, düğme hatlarının ve işlemenin akıllıca işlenmesi var, ancak net bir şekilde sonuçlar oldukça mütevazı bir mikrodenetleyici ile elde edilebilir.
Bunu aynı mikro karakterin bir karakter ekranını yönettiği gerçek bir üründe kullanıyorum. Bu, gelecekteki birkaç üründe yeniden kullanmayı planladığım temel bir kullanıcı arayüzü alt sistemidir. Bir seri port üzerinden ana sistem kontrolörü ile arayüz oluşturur. Ana denetleyici ekrana yazma komutları gönderir ve bir düğmenin durumu her değiştiğinde eşzamansız mesajlar alır.