Introdução ao Arduino - Primeiros passos na plataforma

Arduino

Arduino é uma plataforma de código aberto (hardware e software) criada em 2005 pelo italiano Massimo Banzi (e outros colaboradores) para auxiliar no ensino de eletrônica para estudantes de design e artistas. O objetivo principal foi o de criar uma plataforma de baixo custo, para que os estudantes pudessem desenvolver seus protótipos com o menor custo possível. Outro ponto interessante do projeto, foi a proposta de criar uma plataforma de código aberto, disponível para a comunidade o que ajudou em muito no seu desenvolvimento. Veja a sua história aqui.

 

Nesse artigo você irá conhecer um pouco mais sobre a plataforma e vai dar os primeiros passos para deixar o seu ambiente preparado para o desenvolvimento dos seus projetos.

 

Introdução ao Arduino

 

O site da plataforma o define como:

 

“O Arduino é uma plataforma de prototipagem eletrônica open-source que se baseia em hardware e software flexíveis e fáceis de usar. É destinado a artistas, designers, hobbistas e qualquer pessoa interessada em criar objetos ou ambientes interativos.

 

O Arduino pode sentir o estado do ambiente que o cerca por meio da recepção de sinais de sensores e pode interagir com os seus arredores, controlando luzes, motores e outros atuadores. O microcontrolador na placa é programado com a linguagem de programação Arduino, baseada na linguagem Wiring, e o ambiente de desenvolvimento Arduino, baseado no ambiente Processing. Os projetos desenvolvidos com o Arduino podem ser autônomos ou podem comunicar-se com um computador para a realização da tarefa, com uso de software específico (ex: Flash, Processing, MaxMSP).”

 

Plataforma de desenvolvimento Arduino

 

A plataforma é formada por dois componentes principais: Hardware e Software.

 

O hardware é composto por uma placa de prototipagem na qual são construídos os projetos.

 

O software é uma IDE, que é executado em um computador onde é feita a programação, conhecida como sketch, na qual será feita upload para a placa de prototipagem Arduino, através de uma comunicação serial. O sketch feito pelo projetista dirá à placa o que deve ser executado durante o seu funcionamento.

 

 

Hardware

 

Existem diversas placas oficiais de Arduino e muitas outras não oficiais. Vamos abordar a placa Arduino Uno nesse artigo. A seguir é exibida a placa Arduino Uno REV3:

 

"Placa

 

Conforme visto na imagem acima a placa Arduino UNO possui diversos conectores que servem para interface com o mundo externo. Vejamos como estão organizados os pinos na placa:

  • 14 pinos de entra e saída digital (pinos 0-13):
    • Esses pinos podem ser utilizados como entradas ou saídas digitais de acordo com a necessidade do projeto e conforme foi definido no sketch criado na IDE.
  • 6 pinos de entradas analógicas (pinos A0 - A5):
    • Esses pinos são dedicados a receber valores analógicos, por exemplo, a tensão de um sensor. O valor a ser lido deve estar na faixa de 0 a 5 V onde serão convertidos para valores entre 0 e 1023.
  • 6 pinos de saídas analógicas (pinos 3, 5, 6, 9, 10 e 11):
    • São pinos digitais que podem ser programados para ser utilizados como saídas analógicas, utilizando modulação PWM.

 

A alimentação da placa pode ser feita a partir da porta USB do computador ou através de um adaptador AC. Para o adaptador AC recomenda-se uma tensão de 9 a 12 volts.

 

Software

 

O software para programação do Arduino é uma IDE que permite a criação de sketches para as placas.  A linguagem de programação é modelada a partir da linguagem Wiring . Quando pressionado o botão upload da IDE, o código escrito é traduzido para a linguagem C e é transmitido para o compilador avr-gcc, que realiza a tradução dos comandos para uma linguagem que pode ser compreendida pelo microcontrolador.

 

A IDE apresenta um alto grau de abstração, possibilitando o uso de um microcontrolador sem que o usuário conheça o mesmo, nem como deve ser usado os registradores internos de trabalho.

 

A IDE possui uma linguagem própria baseada na linguagem C e C++.

 

O Ciclo de programação do Arduino pode ser dividido da seguinte maneira:

  1. Conexão da placa a uma porta USB do computador;
  2. Desenvolvimento de um sketch com comandos para a placa;
  3. Upload do sketch para a placa, utilizando a comunicação USB.
  4. Aguardar a reinicialização, após ocorrerá à execução do sketch criado.

A partir do momento que foi  feito o upload o Arduino não precisa mais do computador: o Arduino executará o sketch criado, desde que seja ligado a uma fonte de energia.

 

IDE do Arduino

 

A IDE pode ser baixada gratuitamente no site do Arduino, onde pode ser escolhida a melhor opção de download conforme plataforma utilizada.

 

Quando se abre o IDE do Arduino, será exibido algo semelhante à figura abaixo:

 

Arduino

 

 

O IDE é dividido em três partes: A Toolbar no topo, o código ou a Sketch Window no centro, e a janela de mensagens na base, conforme é exibido na figura anterior.

 

Na Toolbar há uma guia, ou um conjunto de guias, com o nome do sketch. Ao lado direito há um botão que habilita o serial monitor. No topo há uma barra de menus, com os itens File, Edit, Sketch, Tools e Help. Os botões na Toolbar fornecem acesso rapido às funções mais utilizadas dentro desses menus.

 

Abaixo são identificados os ícones de atalho da IDE:

  • Verify
    • Verifica se existe erro no código digitado.
  • Upload
    • Compila o código e grava na placa Arduino se corretamente conectada;
  • New
    • Cria um novo sketch em branco.
  • Open
    • Abre um sketch, presente no sketchbook.
  • Save
    • Salva o sketch ativo
  • Seria monitor
    • Abre o monitor serial.

 

Os demais comandos presentes na barra de menus podem ser consultados através do menu <help><Environment>.

 

Após a conexão do Arduino ao computador, é atribuído a placa uma COM. A primeira vez que o programa Arduino for executado deve-se selecionar o modelo de placa utilizado, no nosso caso escolheremos Arduino Uno, conforme figura abaixo:

 

 Arduino 

 

Após a definição do modelo, deve-se selecionar em qual COM a placa foi atribuída:

 

 Arduino 

 

Após estas configurações o ambiente está preparado para uso e pode-se testar qualquer um dos exemplos que acompanham a IDE ou até mesmo com um novo sketch.

 

"Hello World" – Blink

 

O exemplo mais simples para iniciar a programação do Arduino, que pode ser considerado como o conhecido “Hello World” das linguagens de programação, consiste em acionar um LED através de uma saída digital. 

 

A placa Arduino Uno já possui um Led ligado ao pino digital 13 que pode ser utilizado para o teste, e na IDE podemos carregar o exemplo Blink:

 

Arduino

 

 

Para verificar de o código está correto deve-se clicar no ícone verify, após a compilação é exibida uma mensagem de status da operação e caso esteja tudo certo será exibida a quantidade de bytes gerados pelo programa:

 

Arduino

 

Para grava o código na memória flash do microcontrolador é necessário clicar no ícone Upload, será transferido o código para a placa e após alguns segundos o LED ligado ao pino 13 começará a piscar em intervalos de 1 segundo.

 

Analisando o Código

 

O código do exemplo Blink é relativamente simples, porém apresenta a estrutura básica de um programa desenvolvido na IDE Arduino. Inicialmente nota-se que existem duas funções obrigatórias em um programa Arduino, setup() e loop().

 

A função setup () é executada na inicialização do programa e é responsável pelas configurações iniciais do microcontrolador, tal como definição dos pinos de I/O, inicialização da comunicação serial, entre outras.

 

A função loop () será onde ocorrerá o laço infinito da programação, ou seja, onde será inserido o código que será executado continuamente pelo microcontrolador.

 

Dentro do loop principal está o código que fará o led ligado pino 13 piscar em intervalos de 1 segundo.

 

A função digitalWrite(led, HIGH); coloca o pino em nível lógico 1, ligando o led.

 

A função delay(1000); aguarda o tempo de 1000 ms, ou seja, 1 segundo para que possa ser executada a próxima instrução.

 

A função digitalWrite(led, LOW); coloca o pino em nível lógico 0, desligando o led.

 

E novamente é esperado 1 segundo com a função delay();

 

O loop é repetido infinitamente enquanto a placa estiver ligada.

 

A referência da linguagem pode ser acessada através do menu <help>:

 

Arduino

 

 

 

Testar outros exemplos básicos, é um bom começo para aprender mais sobre a plataforma.

 

 

Saiba mais

 

Arduino UNO

Arduino - O documentário

Placas Arduino - trajetória até o UNO

 

Referências

 

http://arduino.cc/

Referência para programação Arduino

Outros artigos da série

Usando os pinos digitais do Arduino >>
NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Fábio Souza
Engenheiro, especialista em sistemas embarcados. Hoje é diretor de operações do portal Embarcados, onde trabalha para levar conteúdos de eletrônica, sistemas embarcados e IoT para o Brasil. Também atua no ensino eletrônica e programação. É entusiastas do movimento maker, da cultura DIY e do compartilhamento de conhecimento, publica diversos artigos sobre eletrônica e projetos open hardware. Com iniciativas como o projeto Franzininho e projetos na área de educação, leva a cultura maker para o Brasil capacitando e incentivando professores e alunos a usarem tecnologia em suas vidas. Participou da residência hacker 2018 no Red Bull Basement.
recentes antigos mais votados
Notificar
Matheus Quick
Visitante
Matheus Quick

arduino, uma ótima plataforma para entrar no mundo dos microcontroladores

Fabio_Souza_Embarcados
Visitante
Fabio_Souza_Embarcados

Sim Matheus, com o Arduino ficou mais facil o contato com os microcontroladores.

trackback

[…] passos de como trabalhar com a nossa “plaquinha”. O primeiro artigo (você pode ler neste link) é uma introdução ao hardware (que já comentei no post anterior) e sobre a IDE, a interface de […]

trackback

[…] Arduino – Primeiros Passos […]

trackback

[…] Arduino - Primeiros Passos […]

trackback

[…] Arduino - Primeiros Passos […]

trackback

[…] Arduino - Primeiros Passos […]

trackback

[…] Arduino - Primeiros Passos […]

trackback

[…] Arduino - Primeiros Passos […]

trackback

[…] artigo vamos explorar os recursos do TIMER1 presente no ATmega328 utilizado da plataforma Arduino [1], entendendo seu funcionamento e o uso de seus […]

trackback

[…] Arduino - Primeiros Passos […]