Estrutura e lógica de programação Arduino

Compartilhar no facebook
Compartilhar no twitter
Compartilhar no linkedin

Sumário

Introdução.

Criar um programa, nada mais é do que escrever instruções de forma ordenada e seguindo uma lógica específica. A princípio pode parecer algo extremamente difícil, mas, conforme formos entendendo a lógica e a estrutura da linguagem de programação, cada vez fica mais fácil programar e se desenvolver nesse contexto.

É importante ter em mente que existem inúmeras linguagens de programação, cada uma mais adequada a um tipo de uso (clique para saber mais), no caso do Arduino, a linguagem mais utilizada é baseada em C++. É nela que vamos nos concentrar nesse artigo, fazendo uma introdução e dando algumas dicas de como iniciar na programação.

Estrutura de um código Arduino.

No último artigo que postamos sobre programação, explicamos o passo a passo para se instalar o Arduino IDE em um computador, software que atua como uma ferramenta para se escrever, testar e enviar programas para placas compatíveis com Arduino. Também explicamos um pouco da estrutura do programa e como transferir o código a um Arduino (clique para saber mais). Agora vamos aprofundar um pouco mais sobre a estrutura da programação em si.

Ao abrir um novo projeto em branco no Arduino IDE, normalmente chamado de Sketch (esboço ou rascunho), nos deparamos com a seguinte coisa:

Void setup() -> trata-se de uma função que será lida ou interpretada pelo Arduino, apenas uma vez quando for energizado. É uma parte do código reservada para o preparo (set up) dos componentes programáveis que fazem parte do projeto. As linhas de código serão escritas entre as “{}”.

Void loop() -> trata-se de uma função que será lida pelo Arduino logo após a função de “setup”. A grande diferença é que ela será lida de forma repetida (em looping), enquanto o Arduino estiver energizado. Toda vez que o programa chegar na última linha de instruções, irá voltar para a primeira linha dessa função. Trata-se de um código de funcionamento dos componentes do projeto.

Área em branco antes da função “Void seup()” -> Normalmente essa área é utilizada para a declaração de variáveis que serão utilizadas no projeto e inclusão de bibliotecas adicionais (mais sobre isso mais a frente).

“//” -> Todas as informações em um código de programação precedidas por “//”, serão ignoradas no momento da leitura do código por parte do Arduino. Elas servem como comentário para a pessoa que estiver lendo o código. Ajuda principalmente em programas longo, onde podemos colocar a descrição do que os comandos estão executam e qual a funcionalidade.

A lógica de programação.

Antes de efetivamente entender como se escreve um programa, é interessante entender a lógica que existe por trás. A programação nada mais é do que a uma série de instruções que o Arduino irá seguir para realizar uma determinada tarefa. Uma analogia seria uma receita de bolo, onde existe por escrito cada passo do processo. Imagine que o programa só pode ser lido e só poderá executar uma linha por vez, então a ordem na qual as coisas são escritas é extremamente importante.

Com o intuito de deixar a explicação um pouco mais interessante, vamos utilizar uma receita simples de um bolo e adequá-la utilizando a lógica de programação:

 

Bolo Simples Caseiro

Ingredientes:

3 xícaras de chá de farinha de trigo
2 xícaras de chá de açúcar
3 ovos
200 ml de leite
4 colheres sopa de manteiga
1 colher de sopa de fermento químico em pó

Modo de Preparo:

1- Numa tigela, junte os ovos, o açúcar e a manteiga.

2- Misture tudo muito bem e adicione o leite.

3- Continue misturando e depois adicione toda a farinha de trigo.

4- Misture até que a massa fique bem homogênea.

5- Por último, adicione o fermento e misture delicadamente até que agregue completamente na massa.

6- Despeje a massa do bolo em uma forma untada e enfarinhada.

7- Leve para assar em forno preaquecido, 180ºC, por cerca de 40 minutinhos até dourar.

8- Retire do forno e está pronto.

 

Imagine que para escrever uma programação você precisa definir os dispositivos e periféricos (ingredientes) que fazem parte desse programa (receita), os materiais utilizados e você também precisa definir exatamente o passo a passo a ser percorrido (modo de preparo da receita) para que o programa saiba exatamente o que fazer. Levando isso em consideração vamos adaptar a receita imaginando que vamos produzir esse bolo continuamente.

 

Algumas considerações com relação a estrutura:

1) Na parte inicial foram colocados os ingredientes e ferramentas que são necessários para o projeto funcionar. Tudo precisa ser declarado no código, pois, um Arduino não poderia executar algo sem saber de sua existência.

2) No Void setup() foi colocado o aquecimento do forno que foi declarado na parte inicial. Note que o forno só precisa ser aquecido uma vez, por isso foi colocado nessa parte do código.

3)No Void loop() foi colocado toda a parte do passo a passo da receita, mas, note que para fazer vários bolos, foi adicionado uma reposição de cada ingrediente por loop e a limpeza das ferramentas. Nesse caso a cada ciclo, o código iria preparar o bolo, adicionar os ingredientes e lavar as ferramentas para o próximo ciclo.

Essa foi uma forma bem simplificada de mostrar como funciona a lógica e a estrutura de uma programação em Arduino. A complexidade do código dependerá da complexidade do projeto. A grande diferença de um programa real para esse exemplo é a forma como as coisas são escritas, aqui utilizamos português, em um código real, precisamos escrever os comandos em uma linguagem de programação.

Em breve falaremos mais especificamente sobre como escrever um código real para programar um Arduino!