quarta-feira, 13 de janeiro de 2021

EX02 - Programa: Liga, mantém e desliga LED com botão no Arduino

O programa abaixo, liga, mantém e desliga o led com um único botão ligado na placa Arduino. Os botões de pressão (push button) apenas mudam seu estado enquanto estamos pressionando, voltando ao seu estado original quando o botão é liberado. Neste projeto, teremos uma rotina para atribuir a um só botão duas funções de ligar e desligar um componente eletrônico qualquer.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
//Programa : Liga, mantém e desliga Led com único botão no Arduino
//Autor : Sinésio Gomes
//Data :13/01/2021

int led = 0; // Declara a variável "LED" do tipo inteiro no endereço "0"
int botão = 11;//Declara a variável "botão" do tipo inteiro no endereço "11"
int funçãoa = 0; // Declara a variável "função a" com valor inicial 0
int funçãob = 0; // Declara a variável "função b" com valor inicial 0
int estado = 0; // Declara a variável "estado" com valor inicial 0
 
void setup()
{ pinMode (led, OUTPUT); //Define o led como saida
  pinMode (botão, INPUT); //Define o botão como entrada
}
 
void loop()
{funcaoa = digitalRead (botao); // ler o valor enviado pelo botão if ((funcaoa == HIGH) && (funcaob == LOW))
{estado = 1 - estado; delay (500); // tempo apertando o botão } funcaob=funcaoa; if (estado == 1)
{ digitalWrite (led, HIGH); // liga o led } else { digitalWrite (led, LOW); // desliga o led }
}

Vimos acima neste programa como empregar duas funções em um único botão no Arduino, como desligar e ligar uma lâmpada usando o mesmo botão. 

Em muitos projetos de automação temos a função de apagar e de acender uma lâmpada pelo celular ou por um controle infravermelho e nosso interruptor mecânico comumente usado fica atrapalhando esse tipo de esquema, por exemplo, se a lâmpada estiver acesa pelo interruptor convencional você não tem como apaga-la pelo seu controle automatizado com relé.

Figura 01 - Circuito - Liga, mantém e desliga LED

Outra dificuldade é que os códigos de programação mais encontrados na internet só atribuem uma função a um botão, teríamos que usar dois botões, um para ligar e outro para desligar a lâmpada, o que torna o projeto mais caro e mais complicado.

Com o uso de variáveis no programa, podemos a atribuir duas funções em um único botão.

Quando o código estiver pronto para ser carregado na placa, conecte a placa Arduino no seu computador, entre no menu ferramentas, escolha o modelo da placa e a porta na qual a mesma está conectada. Então clique no botão de compilação. Isso irá verificar se existe algum erro no código e gerar o arquivo de programa necessário para carregar na placa. Se estiver tudo OK, clique no botão carregar. Isso irá gravar o programa na placa. Caso não apareça nenhum erro, você deverá ver o LED apagado, ao acionar o botão pela primeira vez, o lede acende, ao acionar o botão novamente o LED apaga..

Arquivos do código fonte - Liga, mantém e desliga Led com um único botão está disponível em: 21_01_02_Liga_Desliga_LED_SRG (PDF)

© Direitos de autor. 2020: Gomes; Sinésio Raimundo. Última atualização: 13/02/2021

Nenhum comentário:

Postar um comentário