fbpx

Como programar o Arduino


No tutorial Fundamentos de Programação para Arduino aprendemos alguns elementos básicos que compõem um Sketch, os operadores e as estruturas de controle de fluxo. Então, podemos começar a programar em Arduino.

O exemplo mais básico e clássico para iniciar a programação do Arduino e placas compatíveis é o Blink (ou Pisca Led), que consiste em acionar um LED por meio de um sinal digital. Como vimos no tutorial Conhecendo o Arduino UNO, essa placa conta com um LED conectado ao pino Digital 13 que pode ser utilizado para este teste. Desta forma, não há a necessita de componentes adicionais.

Esse e outros exemplos básicos encontram-se disponíveis no próprio Arduino IDE e pode ser acessado através do menu Arquivos ao clicar em Exemplos, conforme mostrado na Figura 1. O Blink pode ser acessado através do caminho: Arquivo > Exemplos > 01. Basics > Blink.

Figura 1: Caminho de acesso ao exemplo Blynk.



Ao selecionar o Sketch Blink uma nova janela será aberta contendo o seguinte código:

void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}


Para carregar o código no Arduino é necessário configurar a placa e a porta de comunicação. Desse modo, conecte o Arduino à USB do seu computador, em seguida acesse o menu Ferramentas e busque o modelo da sua placa Arduino. Em nosso exemplo usaremos a placa Arduino UNO, conforme a Figura 2.

Figura 2: Seleção da placa Arduino.


Após a seleção do modelo, deve-se selecionar a porta de comunicação a placa foi atribuída, ou seja, a porta que a placa UNO foi reconhecida. Para saber se o seu computador Windows está identificando a placa vamos realizar um teste acessando o gerenciador de dispositivos. Uma opção para se chegar neste painel é pressionar as teclas “Windows + r”. Assim que o menu executar abrir digite “mmc devmgmt.msc” sem as aspas, como se pode ser observado na Figura 3.

Figura 3: Atalho para acessar o gerenciador de dispositivos.


Após digitar esse comando e clicar em “OK” será aberta a tela da Figura 4. Para verificar se o driver da placa foi reconhecido navegue até a opção Portas (COM e LPT) e expanda clicando na setinha do lado do nome. No nosso exemplo a placa Arduino UNO foi reconhecida com sucesso pela porta COM de número 5.

Figura 4: Tela do gerenciador de dispositivos.


Caso a placa UNO não tenha sido reconhecida pelo seu computador acesse o tutorial Instalando Driver Serial para Arduinos com Chip CH340.
Tendo a informação da porta COM que o Arduino foi conectado, podemos fazer a seleção da porta no Arduino IDE. A Figura 5 mostra a seleção da COM através do menu Ferramentas>Portas

Figura 5: Seleção da porta COM.

Feito isso, para carregar o código na placa Arduino basta clicar no ícone Upload, como pode ser observado na Figura 6.

Figura 6: Realizando upload do código Blink.


A transferência do código demorará alguns segundos, mas, logo em seguida, o LED ligado ao pino 13 começará a piscar em intervalos de 1 segundo.

Video1: Blink.


ENTENDENDO O CÓDIGO

Apesar de simples, o código Blink nos ajudará a compreender sobre a estrutura básica de um programa sequencial desenvolvido no Arduino IDE e como escrever na porta digital da placa Arduino.

Conforme vimos anteriormente, a estrutura do código feito no Arduino IDE é composta por duas funções obrigatórias, que são setup() e loop(), sem elas o Sketch não funcionará.

No Sketch Blink, a função setup() inicializa a configuração do programa. Para isso, faz uso da função pinMode(), responsável por configurar o modo como um pino especificado irá funcionar, podendo ser como saída ou entrada. No exemplo, o LED embutido na porta Digital 13 (LED_BUILTIN) está configurado como porta de saída (OUTPUT).

A função loop() é a função principal do programa e é executada continuamente enquanto a placa estiver ligada. No Sketch Blink desejamos que o LED acenda, permaneça aceso por um segundo, apague, fique apagado por um segundo e repita continuamente o processo. Desta forma, estas informações deverão ser escritas dentro da função loop().

A primeira instrução do loop() do Sketch Blink deve comandar a placa UNO a acender o LED embutido na porta Digital 13 (LED_BUILTIN). Para isso, utilizaremos a função digitalWrite(LED_BUILTIN, HIGH), que escreve um valor HIGH para a porta Digital 13. Definir um pino como HIGH significa que estamos colocando o pino em nível lógico 1, enviando 5 V para que o LED seja ligado. Ao contrário, quando definimos um pino como LOW significa que estamos colocando o pino em nível lógico 0, enviando 0 V ou conectado ao terra.

A próxima instrução escrita foi a função delay(1000). Esse comando diz ao microcontrolador para esperar um intervalo 1000 milissegundos, equivalente a 1 segundo, antes de executar a instrução seguinte.

Em seguida, a função digitalWrite(LED_BUILTIN, LOW) é utilizada para apagar o LED embutido na porta Digital 13. Então, outra instrução de espera por mais 1000 milissegundos é enviada, finalizando a função loop(). No entanto, como esta é a função principal, o programa reiniciará e a executará repetidamente.


DICA

• Configuramos como saída (OUTPUT) todos os dispositivos que desejamos controlar, como: LEDs, buzzer, motores, displays, relés, entre outros;
• Configuramos como entrada (INPUT) todos os dispositivos que desejamos receber dados, como: LDR, botões, sensores infravermelhos, sensores ultrassônicos, termistores, reed switch, entre outros.

Espero que tenham gostado deste tutorial. Em caso de dúvidas deixe seu comentário abaixo.

Att.,
Carol Correia Viana

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.