Arduino – Trabalhando com Entradas


Hoje iremos trabalhar com entradas no Arduino. Para isso podemos utilizar um simples botão o qual nosso programa irá fazer a leitura do mesmo quando pressionado, e acender um led como sinal indicativo.

 

Componentes

– Arduino uno

– Resistor de 220 Ω para o led

– Resistor de 10 KΩ

– Botão

 

Esquema

 

PullDown

 

No esquema acima você pode observar que temos um resistor ligado ao pino 2 juntamente com o botão. São conhecidos como resistores de Pull-Up ou Pull-Down. Esses resistores são empregados para que não tenhamos uma flutuação na leitura do botão, por exemplo, seu valor não é 1 nem 0.  Para resolver esta situação, utilizamos os resistores, (10 KΩ na figura acima) que neste caso é de Pull-Down já que está ligado ao gnd do circuito.

 

Código

 

 

Após gravar o código acima, quando pressionar o botão o led acenderá, e ficará apagado caso solte o mesmo. Para entender basta observa o comando que foi incluso que é digitalRead(), ou seja, irá fazer a leitura do estado atual do botão e então acende o led conforme você o pressiona.

Essa situação acima foi para exemplificar a utilização dos resistores de Pull-Down. Agora, na plataforma Arduino já temos resistores de Pull-Up nos pinos do microcontrolador. Isto então permite que você faça a mesma coisa acima sem necessitar utilizar os mesmos. Desta Forma, você poderia implementar o seguinte esquema e código para executar o mesmo exemplo.

 

Esquema

 

Sem resistor

 

Atente que o botão está conectado de forma diferente que anteriormente e sem o resistor.

 

Código

 

 

O resultado será o mesmo. Detalhe que agora estamos configurando o Botão como entrada, com o comando INPUT em pinMode(), seguido do comando de ativação do resistor interno de Pull-Up. Na função loop apenas foi feito a lógica inversa, em função do Pull-Up manter em nível alto.

Inscreva-se para ficar atualizado!

Inscreva-se agora e fique por dentro das novidades do site

Fique tranquilo, respeitamos sua privacidade!

Deixe um comentário

O seu endereço de e-mail não será publicado.