Pull-up e Pull-down Resistors
Pull-up e Pull-down Resistors
Para garantir uma leitura precisa das entradas digitais, é importante usar resistores pull-up ou pull-down. Esses resistores "puxam" o valor da entrada para HIGH ou LOW quando o botão não está sendo pressionado, evitando leituras incorretas causadas por ruído elétrico.
- Resistor Pull-down: Mantém o valor LOW até que o botão seja pressionado (quando o valor passa para HIGH).
- Resistor Pull-up: Mantém o valor HIGH até que o botão seja pressionado, o que faz com que o valor caia para LOW. O Arduino tem resistores pull-up internos, que podem ser ativados com
pinMode(pino, INPUT_PULLUP)
.
Exemplo: Usar o resistor pull-up interno.
int buttonPin = 7;
void setup() {
pinMode(buttonPin, INPUT_PULLUP); // Ativa o resistor pull-up interno
pinMode(13, OUTPUT);
}
void loop() {
int buttonState = digitalRead(buttonPin);
if (buttonState == LOW) { // O botão está pressionado (LOW por causa do pull-up)
digitalWrite(13, HIGH); // Liga o LED
} else {
digitalWrite(13, LOW); // Desliga o LED
}
}