Ir ao conteúdo

Posts recomendados

Postado

Olá, estou começando a desenvolver um código que gere uma interrupção externa (int0) e utilize o timer. O codigo esta sendo desenvolvido no MPLAB X em linguagem C.

A ideia do código é a seguinte:

 

Crio uma interrupção: Aperto um botão.

Filtro: Utilizo o timer como um filtro de ruídos. Se após 20ms o sinal gerado pelo botão ainda estiver = 1 incremento uma contagem no display de 7 segmentos, se antes de 20ms o sinal se alterar, isso quer dizer que é um ruido.

Display: Irá aparecer no display a quantidade de interrupções geradas.

 

Alguém poderia me ajudar?

  • Membro VIP
Postado

É pra algo 'real' ou teórico/acadêmico? De minha parte, a 1ª...

um simples capacitor já serve como antidebouncing, seu...

55 minutos atrás, Mauricio Coconesi disse:

filtro de ruídos

. Mais ainda se a entrada de interrupt for smicth trigger. E sim, o sw anti ruído é um bom complemento. Me lembro vagamente que já fiz algo. Talvez me lembre. Por hora contente-se com o lado real.

 

Postado

@Isadora Ferraz Obrigado pela resposta! É um projeto acadêmico. O nome "filtro de ruídos" é apenas uma nomeação para conseguir visualizar algo na pratica pois preciso utilizar o timer ( 0,1 ou 2) nesse projeto. O ruido duraria menos que 20ms, se o usuário apertar um botão, esse pulso durará mais que 20ms ou pelo menos 20ms. Como ficaria esse código?

Postado

@Mauricio Coconesi ,

 

Bem-vindo ao Fórum.

 

Acho que o seu conceito de programa está errado.

Se você gerar uma interrupção ao apertar o botão, vai precisar acionar o Timer e esperar ele terminar, tudo dentro da interrupção, o que é um conceito péssimo !

Acho bem mais prático fazer o Timer gerar uma interrupção de tempos em tempos e fazer a leitura do botão, e bolar uma lógica a partir disto, sendo que o tratamento final fica sendo feito no loop principal.

 

Procure aqui neste Fórum sobre Debounce.

 

Paulo

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!