■ Sintaxe do Arduino – Guia Completo
■ Estrutura Geral
Todo programa Arduino possui duas funções principais: - setup(): executa uma única vez no início.
- loop(): executa continuamente em laço infinito.
■ Bloco e Comando
- Bloco: grupo de comandos entre chaves { }.
- Comando: instrução simples terminada em ';' ou um bloco.
■ Estruturas de Controle e Sintaxe
Forma Descrição
tipo nome; Declaração de variável. Ex.: int x;
tipo nome = valor; Declaração com inicialização. Ex.: float pi = 3.14;
tipo nome[tamanho]; Array. Ex.: char texto[20];
{ comando1; comando2; } Bloco de comandos
if (<expr>) comando [else comando] Estrutura condicional
while (<expr>) comando Laço com teste no início
do comando while (<expr>); Laço com teste no fim
for (<init>; <cond>; <inc>) comando Laço for clássico
switch (<expr>) { case valor: comando; } Seleção múltipla
break; Sai do laço ou switch
continue; Vai para próxima iteração
return [expr]; Retorna de função
#define NOME valor Constante simbólica
const tipo nome = valor; Constante em tempo de compilação
função: tipo nome(parametros) { bloco } Declaração de função
setup() Função chamada 1 vez no início
loop() Função que roda em loop infinito
■ Tipos de Dados
Tipo Descrição
int Número inteiro (16 bits no UNO, -32768 a 32767)
long Inteiro longo (32 bits)
float Número real com casas decimais (32 bits)
double Igual a float no UNO (64 bits em placas mais avançadas)
char Caractere (1 byte)
bool Booleano (true/false)
String Texto de alto nível
■ Operadores
Categoria Operadores
Aritméticos + - * / %
Atribuição = += -= *= /= %=
Incremento ++ --
Comparação == != < > <= >=
Lógicos && || !
Bit a Bit & | ^ ~ << >>
Ternário cond ? valor1 : valor2
■ Principais Funções do Arduino
■ Configuração de Pinos
Função Descrição
pinMode(pino, INPUT|OUTPUT|INPUT_PULLUP); Define o modo do pino
digitalWrite(pino, HIGH|LOW); Escreve nível lógico
digitalRead(pino); Lê nível lógico (HIGH ou LOW)
analogRead(pino); Lê valor analógico (0–1023)
analogWrite(pino, valor); Saída analógica PWM (0–255)
■ Controle de Tempo
Função Descrição
delay(ms); Pausa em milissegundos
delayMicroseconds(us); Pausa em microssegundos
millis(); Retorna ms desde que a placa ligou
micros(); Retorna µs desde que a placa ligou
■ Comunicação Serial
Função Descrição
[Link](baud); Inicia comunicação (ex.: 9600)
[Link](valor); Envia dados sem quebra de linha
[Link](valor); Envia dados com quebra de linha
[Link](); Lê 1 byte recebido
[Link](); Nº de bytes disponíveis para leitura
■ Matemática e Utilidades
Função Descrição
map(x, in_min, in_max, out_min, out_max); Converte intervalo
constrain(x, a, b); Limita valor entre a e b
min(a, b) / max(a, b) Menor ou maior valor
abs(x); Valor absoluto
random(min, max); Número aleatório
randomSeed(seed); Define semente para aleatório