Engenharia Estrutural Civil &
Compreender e implementar o desembolso em Entradas de Botão Arduino
Table of Contents
A desbooneração é uma técnica usada na programação do microcontrolador para garantir uma leitura confiável das entradas de botões. Quando um botão é pressionado ou liberado, ele pode gerar múltiplos sinais devido a vibrações mecânicas, causando falsos gatilhos. A implementação desbooneramento ajuda a filtrar esses sinais indesejados e garante a detecção precisa de pressionamentos de botões.
O que é o Debouncing?
A desboonação é o processo de eliminação do ruído causado pelo reboote de contato físico de um botão. Quando um botão é pressionado, o contato pode se conectar rapidamente e desconectar várias vezes antes de se estabelecer. Sem desboote, estes sinais rápidos podem ser interpretados incorretamente como várias prensas.
Métodos de desembolso
Existem dois métodos comuns para implementar o desbouncing em Arduino:
- Debuncing de software: Envolve adicionar um atraso ou verificar o estado do botão ao longo do tempo para confirmar um sinal estável.
- Debuncing Hardware:] Utiliza componentes eletrônicos como filtros RC ou gatilhos Schmitt para suavizar o sinal.
Implementando desboonning de software
A desboncagem de software é comumente usada em projetos Arduino. Envolve ler o estado do botão, esperando por um curto período, e então verificando se o estado permanece inalterado. Este processo reduz os gatilhos falsos causados pelo salto.
Excerto de código de exemplo:
const int buttonPin = 2;
[[FLT: 0]] int buttonState = 0;]
não assinados por muito tempo de descontinuação: = 0;
desalojamento longo não assinadoDelay = 50;]
[[FLT: 0]]void loop () {]
int reading = digitalRead(bottonPin);
[[FLT: 0]] se (ler != botãoEstado) {
lastDebounceTime = milis();
] }
[[FLT: 0]] se (( millis () - lastDebounceTime) > debounceDelay) {
[[FLT: 0]] botãoEstado = leitura;
}
}