quarta-feira, 30 de março de 2016

A Estrutura da Linguagem do Arduino


A estrutura básica da linguagem de programação do Arduino é bastante simples: ela encapsula dois blocos de funções que são formados por outros blocos de funções escritas em linguagem C/C++. O primeiro bloco de funções forma a função setup( ); o segundo, a função loop( )

Função: Em linguagens de programação são como sub-rotinas ou procedimentos; são pequenos blocos de programas usados para montar o programa principal. Elas são escritas pelo programador para realizar tarefas repetitivas, ou podem ser importadas prontas para o programa em forma de bibliotecas. 

Declaração da Função: Toda função deve ser declarada antes de ser chamada atribuindo-lhe um tipo e um nome seguido de parênteses, onde serão colocados os parâmetros de passagem da função. Depois do nome são definidos entre as chaves { e } os procedimentos que a função vai executar.

A função setup() é chamada quando um programa começa a rodar. Use esta função para inicializar as sua variáveis, os modos dos pinos, declarar o uso de livrarias, etc. Esta função será executada apenas uma vez após a placa Arduino ser ligada ou ressetada.

Após criar uma função setup() que declara os valores iniciais, a função loop() faz exatamente o que seu nome sugere, entra em looping (executa sempre o mesmo bloco de código), permitindo ao seu programa fazer mudanças e responder. Use esta função para controlar ativamente a placa Arduino.

 
Exemplo  

/*
Blink
Acende e apaga um LED com intervalos de 1 segundo repetidamente.
Este código de exemplo é de domínio publico.
*/

 
// O pino 13 tem um LED já conectado na maioria das placas Arduino.
// Você pode ou não conectar um diretamente na placa como na imagem.
int led = 13; // cria uma variável do tipo inteiro com o nome led e valor 13
// a função setup roda uma única vez quando a placa é alimentada
// ou quando o botão de reset é pressionado
void setup() {
        // inicializa o pino digital como uma saída.
        pinMode(led, OUTPUT);
}

// a função loop roda indefinidamente:
void loop() {
        // acende o LED (HIGH é o nível de voltagem da placa)
        digitalWrite(led, HIGH); 
        // espera de 1 segundo
        delay(1000); 
        // apaga o LED
        digitalWrite(led, LOW);
         // espera de 1 segundo
        delay(1000);
 }

Para utilizar o código acima você necessita de uma placa Arduino que pode ser alimentada apenas pela conexão USB e com um LED conectado como mostra a imagem abaixo. Caso um LED não seja conectado há um LED SMD conectado ao pino 13 na própria placa que responderá ao código.

Imagem gerada com Fritzing.

Fontes:

Nenhum comentário:

Postar um comentário