Qual a linguagem de programação utilizada em Arduino


Quase duas décadas depois do surgimento, o Arduino é uma realidade quando os assuntos são desenvolver protótipos, investir menos dinheiro para fazer testes e ganhar uma imensidão de possibilidades por conta da versatilidade da placa.
Popularizado por ter software e hardware livres, o Arduino ganhou espaço nas mesas de testes e nas telas de computador onde são programadas, tornando-se um grande aliado da educação. Some isso à adesão da comunidade de tecnologia ao produto e o que se tem é uma solução em constante evolução e barateamento.
O Arduino é uma plataforma versátil que aceita gravações desde pequenos códigos, como acender uma lâmpada de LED, porém, pode ser usada em operações mais complexas como reconhecer gases através de sensores.
A junção do baixo custo e da versatilidade fizeram com que o Arduino ganhasse relevância em alguns setores de produção, em especial, na tecnologia.
E algumas dúvidas surgiram. Neste texto vamos explicar uma dúvida comum: Qual a linguagem de programação utilizada em Arduino? Boa leitura!
O que é Arduino?
O Arduino é uma plataforma de prototipagem eletrônica open source e é também um hardware livre. Ele funciona como um computador. O que isso significa? Primeiro que pode ser comercializado de forma livre, tanto quando se fala da parte física, quanto do software.
Além disso, ele aceita a inserção de programas e é possível controlar o comportamento da placa através de um computador. As atividades programadas para que a placa funcione são escritas no ambiente de desenvolvimento integrado (IDE - Integrated development environment). Em outras palavras, um local próprio para desenvolver o software que será gravado na placa Arduino.
Prototipagem é uma palavra que ilustra bem o que é um Arduino. Ela significa criar um protótipo vantajoso do ponto de vista operacional e financeiro. Para se ter uma ideia, alguns projetos já foram desenvolvidos com Arduino e resultaram em automações residenciais como identificar gases, por exemplo. Os aspiradores de pós robô, interruptores inteligentes, exemplificam, na prática, resultados de protótipos desenvolvidos com Arduino.
Qual a linguagem de programação usada em Arduino?
O nome da linguagem baseada em C++ não poderia ser outro senão Arduino. Ela está disponível para macOS, Linux e Windows.
O Arduino é baseado na linguagem C++. Para compilar um programa é necessário ter um ambiente de desenvolvimento, neste caso, o Arduino IDE que é um aplicativo de computador com compilador integrado. Na prática, para testar o Arduino, a placa deve estar conectada a um terminal onde o código está escrito será gravado.
Como funciona uma placa Arduino?
Muito parecido a um computador. Ele armazena o software que vai controlar a placa. Para isso, o Arduino conta com diversos componentes que podem ser configurados e gravados via USB.
As placas são compostas por entradas digitais (linha verde na imagem), analógicas, pinos de voltagem e GND (abreviação de ground).
Porém, existem diversos modelos de Arduino que se diferenciam pela quantidade de entradas, memória e também de recursos adicionais. Vamos conhecer alguns deles.
1. Arduino Uno R3
É a placa ideal para quem está começando. São 6 pinos de entradas analógicas, 14 entradas e saídas digitais, 6 podem ser usadas como PWM - que possibilita a placa entender a intensidade do sinal, um volume de música. Mas como saber quais podem ser usados como PWM, você deve ter se perguntado? Eles vêm com o sinal “~” ao lado.
2. Arduino Leonardo
Este modelo tem mais recursos se comparado ao Uno. O computador chega até a reconhecer esta placa como um periférico, como um mouse. O Leonardo tem o dobro de entradas analógicas, totalizando 12, 20 entradas e saídas digitais e 7 saídas PWM.
3. Arduino Mega R3
É uma versão tunada da placa Uno. São 54 entradas digitais, 14 funcionam como PWM e 16 entradas analógicas. Esta placa é indicada quando o projeto tem muitos botões.
4. Arduino Due
Enquanto isso, o Arduino Due é um dos modelos de ponta. Ele conta com 54 entradas e saídas digitais (doze podem ser PWM), 12 entradas analógicas e 4 interfaces seriais.
5. Sensores e módulos
Para quem gosta de testar mesmo, as placas Arduino ainda podem ser combinadas com sensores módulos para medir intensidade da luz, temperatura, grau de inclinação, proximidade e conexão com a internet. Como por exemplo, os sensores de estacionamento.
Como começar o seu projeto Arduino?
Para iniciar projetos com Arduino é importante entender as linguagens C e C++, saber um pouco sobre eletrônica (não precisa ser expert) e ser muito criativo. Entenda melhor abaixo.
Estude um pouco de eletrônica
Trabalhar com o Arduino não é nenhum bicho de sete cabeças, mas é preciso ter alguma noção em eletrônica. Sabendo como montar os circuitos, entender as tensões e correntes elétricas você já consegue tirar o projeto do papel.
Estude as linguagens de programação C e C++
O Arduino possui uma linguagem própria e homônima. Porém, essa linguagem é baseada em C e C++. Dessa forma, se você entender como programar em C e C++ não vai ter problemas em programar no Arduino IDE.
Explore a sua criatividade
Mostramos aqui que alguns protótipos já foram feitos com Arduino e, inclusive, já há produtos no mercado com funções que foram testadas na plataforma. Pense na automatização de uma casa e como a rotina poderia ser mais fácil, por exemplo, e mãos à massa.
Comprar uma placa
Chegou a hora de investir em uma placa em um protoboard. Isso serve para que o software possa ser testado na placa. Se você ainda não está seguro para usar uma placa física, vamos te mostrar uma opção bem legal. No site Tinkercard, você consegue fazer todos os testes com o Arduino de forma online e gratuita.
Referência da Linguagem Arduino - Funções
A programação em Arduino pode ser analisada em três partes diferentes. As funções têm como finalidade controlar a placa e realizar computações. Veja alguns exemplos abaixo:
Entradas e Saídas Digitais
digitalRead()
digitalWrite()
pinMode()
Entradas e Saídas Analógicas
analogRead()
analogReference()
analogWrite()
Apenas Zero, Due e Família MKR
analogReadResolution()
analogWriteResolution()
Entradas e Saídas Avançadas
noTone()
pulseIn()
pulseInLong()
shiftIn()
shiftOut()
tone()
Funções Temporizadoras
delay()
delayMicroseconds()
micros()
millis()
Funções Matemáticas
abs()
constrain()
map()
max()
min()
pow()
sq()
sqrt()
Funções Trigonométricas
cos()
sin()
tan()
Caracteres
isAlpha()
isAlphaNumeric()
isAscii()
isControl()
isDigit()
isGraph()
isHexadecimalDigit()
isLowerCase()
isPrintable()
isPunct()
isSpace()
isUpperCase()
isWhitespace()
Números Aleatórios
random()
randomSeed()
Bits e Bytes
bit()
bitClear()
bitRead()
bitSet()
bitWrite()
highByte()
lowByte()
Interrupções Externas
attachInterrupt()
detachInterrupt()
Interrupções
interrupts()
noInterrupts()
Comunicação
Serial
Stream
USB
Keyboard
Mouse
Referência da Linguagem Arduino - Variáveis
Já as variáveis são linhas que delimitam o tipo de dado e constantes da linguagem Arduino. High e Low, por exemplo, são os comandos para ligar e desligar determinada entrada. Veja outras aparições de variáveis a seguir:
Constantes
INPUT | OUTPUT | INPUT_PULLUP
Conversão
byte()
char()
float()
int()
long()
word()
Tipos de Dados
bool
boolean
byte
char
double
float
int
long
short
size_t
string
String()
unsigned char
unsigned int
unsigned long
vetor
void
word
Escopo de Variáveis e Qualificadores
const
escopo
static
volatile
Utilitários
PROGMEM
sizeof()
Referência da Linguagem Arduino - Estruturas
A estrutura é, basicamente, a linguagem Arduino, inspirada na C++. São elas:
Sketch
Estruturas de Controle
Outros Elementos da Sintaxe
Operadores Aritméticos
Operadores de Comparação
Operadores Boleanos
Operadores para Ponteiros
Operadores Bitwise
Operadores de Atribuição Composta
*= (atribuição por multiplicação)
^= (atribuição por ou exclusivo)
Conclusão
O Arduino é uma solução versátil para quem faz testes com protótipos, sejam eles aplicados à tecnologia ou outras atividades. Ele tem sido muito utilizado em universidades e escolas para ensinar programação, já que testes podem ser feitos de forma gratuita e pela internet.
Na prática, ele pode aceitar gravações simples como acender uma lâmpada através de palmas, ou até mesmo ser aplicado no uso industrial. E como tem sido usado de forma colaborativa há quase duas décadas, está em constante melhoria e atualização.
Ele também oferece possibilidades interessantes para testar programas e também para ver na prática se o funcionamento das linguagens aplicadas nele estão corretas. O Arduino é uma plataforma que oferece desde testes simples de programação até soluções para a indústria.
Se você gostou desse conteúdo e gostaria de entrar na área de programação, eu recomendo que você faça a sua inscrição na próxima turma da Kenzie Academy Brasil.