Tutorial de Programação Arduino – Lição 3

Código base:

-> Componentes de um código;
-> Bibliotecas;
-> Variáveis;
-> Funções;
-> void setup();
-> void loop().

Componentes de um código

Vamos considerar que um código no Arduino é constituído por 5 elementos principais:

--- As bibliotecas, que vêm no inicio do programa, e onde são incluídas todas as bibliotecas as quais são normalmente constituídas por funções pré-feitas por outros programadores ou até mesmo pelos criadores da plataforma Arduino.

--- As Variáveis, as quais são definidas após as livrarias, servindo para guardas informações, como por exemplo o valor de uma velocidade, o resultado de um calculo, etc...

--- As funções, não sendo completamente necessário que sejam colocadas abaixo das variáveis, mas para seguir um raciocínio linear vamos admitir que são colocadas abaixo das variáveis. Estas funções já dizem respeito a funções criadas por nós e não às incluídas nas bibliotecas.

--- void setup(), como foi visto na lição 2, este é normalmente usado para inicializar variáveis, modos de pinos, definição a velocidade de transmissão serial, etc...

--- void loop(), mais uma vez, como visto na lição 2, aqui é a parte do código em que se faz um loop, ou seja, cria-se um ciclo de repetição para que as instruções dentro do mesmo sejam repetidas.

Bibliotecas

Quando se cria um código/programa usando uma linguagem de programação, neste caso C/C++, existe a possibilidade de usar um conjunto de funções pré-criadas por outros programadores que já resolvem determinados problemas, ou seja, não é necessário inventar a roda se ela já foi inventada, poupando imenso trabalho.
A esse conjunto de funções damos o nome de bibliotecas, do inglês, library.

Exemplos de bibliotecas a utilizar ao longo do projeto:
- Servo: Esta é utilizada quando temos um servo-motor acoplado ao arduino, assim de uma forma intuitiva, consegue-se posicionar o motor numa determina posição, dando apenas como dados de entrada o ângulo.
- Ultrasonic: A livraria ultrasonic é utilizada para controlo do sensor de ultra-som. Facilitando a leitura da distância lida por este.

Na prática, para se utilizar uma biblioteca basta inclui-la no início do código, por exemplo, para usar a biblioteca servo deve ter uma linha no início do código escrita com o formato apresentado na imagem à direita:

Variáveis

Uma variável é uma forma de dar um nome e guardar um valor para usar ao longo do programa, como por exemplo, dados de um sensor ou um valor intermediário de um cálculo.

-> Declarar Variáveis

Antes de serem utilizadas, as variáveis devem ser declaradas. Declarar uma variável significa definir o seu tipo, e opcionalmente, configurar um valor inicial (iniciar a variável). As variáveis não precisam ser iniciadas quando são declaradas.

int variavel1; // declarar variável
int variavel2 = 0; // iniciar variável

NOTA: "int" é o tipo de variável, neste caso um inteiro, "variavel1" é o nome atribuido à variável.

-> Usar Variáveis

Após serem declaradas ou iniciadas, podem ser usadas de forma a atribuir, alterar ou utilizar um valor. Para atribuir ou alterar um valor de uma variável utiliza-se o operador "=", dizendo ao programa para atribuir o que estiver do lado direito do sinal de igual, dentro da variável que deve ficar do lado esquerdo do sinal de igual.

variavel1 = 7; // atribuir à variável o valor 7
variavel2 = analogRead(2); // atribuir a voltagem lida de uma porta analógica 2 do arduino

-> Tipos de Variáveis

Existem diversos tipos de variáveis, umas onde apenas se podem guardar números e outras onde pode ser guardado qualquer tipo de carater, seja ele um número, uma letra ou um símbolo.

int - consegue guardar valores de -32767 até 32767 (apenas números inteiros).
int var1 = 200;

float - consegue guardar valores de -3.4 x 10^-38 até +3.4 x 10^+38 com até 6 dígitos de precisão.
float var2 = -0.0489;

double - consegue guardar valores de -1.7 x 10^-308 até +1.7 x 10^+308 com até 10 dígitos de precisão.
double var3 = 0.478009;

char - consegue guardar letras, números e símbolos: 'a', 'b', 'H', '^', '*','1','0'.
char var4 = 'A';

sting - consegue guardar conjuntos de letras, números e símbolos: 'a', 'b', 'H', '^', '*','1','0' (por exemplo, uma frase).
char var5[20] = "Escola de Robótica!!";

NOTA: no caso da string esta é um conjunto de carateres por isso inicia-se com sendo do tipo "char" mas no nome da variável, entre parêntesis rectos coloca-se o número de carateres que serão colocados no seu interior, essa informação é colocada dentro de aspas duplas.

Funções

As funções são usadas para criar pequenos pedaços de códigos separados do programa principal. No caso do arduino estas são colocadas fora do void loop().

Qual a vantagem de fazermos uma função?

As funções são importantes pois devolvem valores, ajudam a fragmentar o código em partes menores e podem ser utilizadas mais de uma vez no mesmo programa, poupando tempo de programação e inúmeras linhas de código que fazem o mesmo.

Na imagem à direita podemos ver como se cria uma função e como é utilizada no void loop().
A função em questão soma dois valores e depois devolve o resultado ao programa principal.

void setup()

O "void setup ()" é normalmente usado para inicializar variáveis ​​, modos de pinos , definição a velocidade de transmissão serial, etc. Por exemplo se utilizar-mos um servo-motor e queremos atribuir-lhe uma posição de inicialização (em que posição o servo deve estar situado antes do inicio das operações) podemos utilizar o exemplo de código apresentado à direita.

void loop()

O "void loop ()" é a parte do código em que se faz um loop, ou seja, cria-se um ciclo de repetição para que as instruções dentro do mesmo sejam repetidas.

Leave a Reply