Se você é um designer profissional de eletrônica, é provável que seu chefe nem permita que você faça isso em hardware. O motivo é simples: se o lote de produção é grande o suficiente, o software é praticamente gratuito , enquanto o hardware deve ser pago por cada unidade que você produz. E enquanto os resistores e capacitores são muito baratos, montá-los em uma placa de circuito impresso pode custar até 20 vezes o preço de compra.
Independentemente de você renunciar em software ou hardware, você ainda precisa selecionar botões de qualidade. O infame botão 157ms do artigo simplesmente não é adequado para nenhuma aplicação.
Normalmente, mostro o botão em intervalos de 32 ms , o que é suficiente para diminuir o tempo de debounce de qualquer botão bom. Sou bastante fã dos Switches SKQG TACT da Alps .
Nos poucos dispositivos que testei, o tempo de rejeição inicial era inferior a 10ns. Embora tenha uma vida útil de 100.000 ciclos, testamos por 200.000 ciclos e, mesmo assim, o débito de 32ms foi suficiente. (Acho que deveria ter medido o nível real de devolução, mas nosso principal interesse na época era o comportamento do produto final. De qualquer forma, estávamos usando-o fora das especificações.)
Se você realmente deseja uma solução de hardware, recomendo a solução de flip-flop SR mencionada no artigo como a melhor solução tecnicamente:
O flip-flop pode ser construído com uma porta NAND dupla , que está disponível em um pequeno pacote VSSOP8, por exemplo. A principal desvantagem desta solução é que você precisa de um botão SPDT, em que o SPST está muito mais disponível.