By victor / Programação / 0 Comments

Como fazer a programação do Arduino

O Arduino com certeza é uma excelente plataforma de prototipação de projetos de eletrônica, assim, entender a programação do Arduino é essencial para executar projetos bem sucedidos com o microcontrolador. Apesar de parecer simples, essa é uma atividade que requer muito treino e exercícios, sendo muito importante dominar conceitos de lógica de

programação para facilitar o entendimento dos códigos de programação. O objetivo dese artigo é mostrar como funciona a programação do arduino, quais os passos para aprender a lógica de programação, e os códigos que podem ser desenvolvidos utilizando a IDE do Arduino.

Linguagem de Programação do Arduino

Assim como nós humanos, os computadores também tem uma linguagem. Quando você quer que o computador faça alguma coisa, você precisa portanto falar para ele como fazer isso. Em contrapartida, se você não fizer isso, ele não vai saber fazer.

Dessa forma, você já deve ter ouvido falar nos binários, não é mesmo? Eles são a linguagem que os computadores usam, e são baseados em 0 e 1. Assim, toda informação é enviada em sinais elétricos, que se resumem a dois estados, ligado ou desligado. É somente isso que o computador entende. As milhares de combinações possíveis desses 0 e 1 formam tudo o que você está vendo em sua tela neste momento.

programação

Mas é claro que nenhum humano em sã consciência vai sair programando em binários. E é por isso que existem as linguagens de programação, ela serve como um interprete que fica entre você e a sua maquina. Assim você pode dar instruções mais simples, do tipo “faça alguma coisa” e deixar com que o interprete transforme isso em binários e entregue ao computador.

Não vou aprofundar muito em linguagens de Programação, mas basicamente existem linguagens de Alto nível, que se aproximam mais da linguagem humana, e linguagens de baixo nível, que se aproximam mais a linguagem de maquina.

Portanto, o Arduino, trabalha com a linguagem de programação C++ com algumas modificações. Contudo, você não precisa se preocupar, já que ela é uma linguagem de Alto Nível, e é bem intuitiva de se trabalhar.

Instalando a IDE para Programação do Arduino

Você vai precisar instalar o compilador do Arduino, onde serão escritos os códigos para enviar para a memória do Arduino, para que dessa forma ele possa executar. Assim, chamamos esse programa de Integrated Development Environment, dai a sigla IDE.

Você pode fazer o download no site do Arduino, clicando aqui. Faça a instalação e execute o programa, vai abrir uma tela parecida com essa:

programação do arduino

Primeiros Algoritimos para Programação do Arduino

Um algorítimo, é como uma receita que você da para o computador falando o que ele tem que fazer. No Arduino chamamos os algorítimos de sketch.

Antes de começarmos a estudar os Algoritmos, vá em Tools ou Ferramentas > Board > Selecione sua placa. A minha placa por exemplo é o Arduino Mega 2560, então selecionei “Arduino/Genuino Mega ou Mega 2560”

Agora vá em Arquivos>Exemplos>02.Digital>Button

Vai abrir um Algoritmo como esse aqui:

const int buttonPin = 2;
const int ledPin = 13;
int buttonState = 0;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
}

Ele serve para receber informação de um botão e enviar para o LED, e, se o botão estiver pressionado, o LED liga. Se não estiver, o LED não liga. Esse é um exemplo de algoritmo para você estudar. Vamos a seguir entender algumas coisas que compõe um algoritmo como esse.

Variáveis

Quando você quer declarar algum valor que pode ser alterado, você faz a declaração de uma variável e o computador vai armazenar ela. Veja um exemplo de declaração de variável.

int buttonState = 0;

No caso dessa variável, ela serve para armazenar informação da posição do botão, se ele esta apertado ou não. O nome atribuído a essa variável é “buttonState”, e o tipo de dado dela é “int”.

Quando uma variável é declarada dentro de uma função, ela é chamada de variável local, já que só vai ser valida quando usada dentro da função. Quando ela é declarada fora da função, chamamos de variável global, já que valera para todas funções no código.

Vamos ver a seguir alguns tipos de dado das variáveis:

Tipos de Dados

Quando declaramos uma variável, precisamos definir que tipos de dados ela vai armazenar.

  • char – Um caractere, podendo ser letras e símbolos
  • int – armazena um número de -32767 a +32767
  • float – um número de -3.4 x 1038 até +3.4 x 10+38com até 6 dígitos de precisão
  • double – recebe um número de -1.7 x 10308 até +1.7 x 10+308com até 10 dígitos de precisão
  • string – uma sequencia de caracteres

Esses são alguns tipos mais comuns de variáveis que você vai usar programando o Arduíno. No programa que mostrei a você anteriormente, vimos variáveis do tipo “const int”. Elas nada mais são variáveis “int”, mas o const significa que o valor nelas vai ser sempre o mesmo.

Atribuição de Valores

Quando vamos atribuir valor a alguma coisa, usamos o sinal “=”, como por exemplo nessa variável abaixo:

const int ledPin = 13;

Nela, o valor 13 é atribuído a variável “ledPin”. Isso para o Arduino significa que o LED está ligado no pino 13, mas vamos ver isso mais a frente.

Operadores

Operadores servem para somar, subtrair, declarar igualdade, dividir e muitas outras operações que quisermos fazer com variáveis. Alguns operadores tem alguns sinais um pouco diferentes do comum, mas com o tempo você se acostuma a programar usando eles. Veja abaixo:

  • + : Adição
  • - : Subtração
  • * : Multiplicação
  • / : Divisão
  • < > : maior ou menor
  • >= : maior ou igual
  • <= : menor ou igual
  • == : igual a, usamos quando queremos falar que uma variável é igual a outra, diferente do = que é para atribuir um valor
  • && : sinal para conjunção, quando queremos por exemplo que variável X && variável Y façam alguma coisa.
  • ||: disjunção, sinal para “ou” quando queremos que seja ou uma variável X ou uma variável Y
  • != : desigualdade
  • ! : negação

Funções

Assim como as variáveis, você pode declarar funções para fazerem determinadas tarefas, e assim no meio do algoritmo você chama a função X para realizar aquela tarefa. Servem para simplificar muito os códigos.

O Arduino tem duas funções que ficam rodando em loop enquanto ele está ligado, a função setup( ) e a função loop ( ). Se você quiser criar novas funções você pode declarar elas da seguinte forma:

void NomeDaFunção() {
       tarefa que a função vai realizar aqui
}

Depois quando você quiser chamar essa função basta usar o seguinte comando:

NomeDaFunção ( ) ;

Valor de Retorno

Quando queremos dar uma condição, por exemplo, se a temperatura do sensor for maior que 30º, quisermos que ele retorne algum valor, podemos portanto usar o comando return como no exemplo abaixo:

return 1;

Delay na Programação do Arduino

No Arduino, quando queremos que o código espere um tempo antes de partir para o próximo passo, usamos a função delay( ):

delay(1000);

Vale lembrar que 1000 é o números de milissegundos do tempo de pausa.

Estrutura If

if(condição) {
...
}else{
...
}

If em inglês significa “Se”, e serve para criarmos uma condição. Portanto, “Se uma variável, tiver X valor, faça isso”. Assim, o que o sistema faz é basicamente verificar se uma condição é verdadeira, e se for ele executa as instruções. Veja um exemplo:

if(x == 5){
digitalWrite(led1, HIGH);
}

Se o valor de X for igual a 5, o LED 1 vai acender.

Else

Essa é para falarmos senão. Se o valor de X for igual a 5, o LED 1 vai acender, se não, o LED 2 vai acender.

if(x == 5){
digitalWrite(led1, HIGH);
}else{

digitalWrite(led2, HIGH);

}

Estrutura While na Programação do Arduino

O While serve para o programa executar uma função enquanto determinada condição for verdadeira. While em inglês significa enquanto. Tem um formato parecido com o if. Veja abaixo:

while( condição ) {

...

}

Por exemplo, se quisermos piscar um LED 5 vezes, não precisamos mandar ele acender e apagar 5 vezes. Podemos colocar um While para automatizar isso. Veja:

int contagem = 0;

while ( contagem < 5 ) {
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
delay(500)
contagem = contagem + 1;
}

Veja que no final do código é somado 1 ao valor da contagem. Portanto, quando a contagem chegar em 5, o LED para de piscar, isso por que ele já piscou 5 vezes.

Existe também a função “nomedavariável++”. O ++ vai adicionar 1 a cada loop. É muito útil nessas situações.

Estrutura For na programação do Arduino

O For é muito parecido com o While, mas ele simplifica alguns passos. Assim, vamos fazer o mesmo código de piscar o LED 5 vezes, mas com o for:

int contagem;

for(contagem=0; contagem < 5; contagem++){
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
delay(500)
}

A diferença aqui é que declaramos somente a variável, e atribuímos o valor dela na estrutura do for. Dessa forma o for possui inicialização, condição e finalização em sua estrutura. Veja abaixo:

for(inicialização, condição, finalização){

}
  • Inicialização: Comando executado apenas uma vez, mas no inicio da execução do for;
  • Condição: É verificada diversas vezes, e enquanto for verdadeira, os comandos são executados;
  • Finalização: É um comando executado ao final de cada loop

Write a Comment

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *