Moderadores: andre_luis, 51, guest2003, Renie
xultz escreveu:O único pepino que vejo nesta tua ISR é que ela leva 150ms + tempo de debounce para tratar. Dependendo do sistema, esse tempo todo numa ISR é fatal.
O ideal é aquele "n" ficar fora da ISR como variável global, e de alguma forma checar os 30ms pelo contador do timer. Ou seja, para cada bounce ele gera uma interrupção, mas ela é tratada muito rapidamente.
Eu fiz um debounce para um teclado que faz varredura, e ficou simples e funcionou: se varrer 5 vezes e tiver a mesma leitura, debounceou. Se estiver diferente, zera o contador. Ficou filé.
jorgeluiz escreveu:faz a interrupçao na borda de SUBIDA. Voce aperta o botao, aterra, ele só vai pra interrupçao na hora que solta.
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante