INICIANDO COM O ARDUINO, FAZENDO UM LED PISCAR
A plataforma arduino vem se mostrando a de mais fácil aprendizado e a de maior poder, procurando pela internet podemos encontrar um miríade de projetos e instruções básicas, para não fugir do padrão começarei da forma mais básica possível é o que é mais básico do que fazer um led piscar?
Observe a imagem abaixo e monte o circuito exatamente como apresentado.
Não se esqueça que o lado chanfrado do LED é o negativo e portanto deve ser ligado ao GND (terra) e o lado positivo deve ser ligado a um resistor para limitar a corrente algo em torno de 10mA a 20mA procure não ultrapassar o último limite. Para calcular a corrente utilize a lei de OHM.
Código fonte: (em itálico)
#define LED 13
void setup()
{
pinMode(LED, OUTPUT); //seta o pino como output
}
void loop()
{
digitalWrite(LED, HIGH);
delay(1000);
digitalWrite (LED, LOW);
delay(1000);
}
O código acima é escrito em linguagem C, e faz uso de bibliotecas integradas do arduino como por exemplo a função pinMode que seta o tipo de função do pino a ser usado, como um LED é um elemento de saída ele é setado como OUTPUT.
Na pasta de instalação do arduino subpasta reference podemos consultar uma explicação básica em inglês de todas as funções padrões, vou pegar a função digitalWrite para exemplificar.
digitalWrite()
Description
Syntax
Parameters
digitalWrite()
Escreve ALTO(HIGH) ou BAIXO(LOW) a um pino previamente definido digitalWrite(pin, value)
Neste exemplo:
digitalWrite(LED, HIGH) fara com que o LED se acenda
Para criarmos um efeito de pisca acendemos o LED aguardamos um tempo delay(1000) e o apagamos, para apagar usaremos digitalWrite(LED, LOW).
PARTE 2: Usando um botão para ligar um LED.
Novamente monte o circuito de acordo com o apresentado abaixo (resistor do botão de 10K ohms):
Código fonte: (em itálico)
#define LED 13 // Define LED como o pino 13
#define BOTAO 7 // Define BOTAO como o pino 7
int var = 0; // Var é a variável que armazenará o estado do botao(pressionado ou não)
void setup()
{
pinMode(LED, OUTPUT); // Define o LED como saída
pinMode(BOTAO, INPUT); // Define a chave como entrada
}
void loop()
{
var = digitalRead(BOTAO); // Lê o estado do botão pressionado = 1 solta = 0
if (var==HIGH) { // Se 1 ou Alto ou 5 Volts
digitalWrite(LED, HIGH); // O LED acende
}
else{ // Senão
digitalWrite(LED,LOW); // O LED fica apagado
}
}
Neste exemplo foi adicionado um mecânismo de entrada de dados digitais o BOTAO ou CHAVE,
como o botão é usado para informar um estado ele deve ser declarado como INPUT.
pinMode(BOTAO, INPUT); // Define a chave como entrada
Não basta somente declarar o botão como uma entrada é necessário também ler o estado desse botão
que pode ser Alto ou Baixo / High ou Low. Para lermos o estado do botão usamos a função digitalRead(BOTAO).
var = digitalRead(BOTAO); // Lê o estado do botão pressionado = 1(HIGH) solto = 0 (LOW)
Como funciona a chave ou botão?
Isso é muito simples, quando a chave está aberta a tensão fica entre seus terminais portanto no pino 7 do arduino ( o fio que vai par ao pino 7 é o mesmo que está ligado ao voltimetro na figura) teremos 0 Volts, agora quando fechamos a chave a tensão de 5 Volts fica entre os pinos do resistor portanto nível alto no pino 7.
Para melhor entendimento veja a imagem abaixo:
Resultado final
Caso ainda não esteja familiarizado com a linguagem C recomendo procurar algumas apostilas pela internet ou consultar o seguinte livro “Teach Yourself C++ in 21 Days” em inglês.
No site www.4shared.com pode-se encontrar muita coisa mesmo, sempre vale a pena olhar nele até mesmo antes do google.