Explore projetos Arduino
Centenas de projetos, do nível iniciante ao avançado, com esquemas dos circuitos, códigos e vídeos. Comece pelo seu nível.

Iluminação automática com ESP32 e sensor de movimento PIR
Neste projeto, usaremos o sensor de movimento PIR HC-SR501 para detectar quando alguém entra no cômodo e acender o LED automaticamente. Acompanharemos o tempo em que o LED fica aceso com `millis()`. Cada leitura HIGH do sensor atualizará o instante do último movimento, e o LED apagará pelo menos 10 segundos após a última leitura HIGH. O código atual também espera 50 ms em cada ciclo com `delay(50)`, portanto o laço da aplicação não é totalmente livre de bloqueios.

Controle de fita WS2812B NeoPixel com ESP32
Os LEDs endereçáveis WS2812B (NeoPixel) são LEDs RGB inteligentes que podem ser controlados em cadeia por um único pino de dados. Neste projeto, vamos controlar uma fita WS2812B de 8 LEDs com a biblioteca Adafruit_NeoPixel para criar uma animação suave de arco-íris. Embora o nível lógico de 3,3V do ESP32 funcione sem problemas na maioria dos lotes de WS2812B, vamos mostrar uma solução com um resistor de 470Ω em série e um capacitor de 1.000µF para casos de instabilidade.

Raspberry Pi Pico: semáforo com 4 modos selecionados por botão (máquina de estados, GP11-13 + GP4)
4 modos de semáforo com apenas 1 botão! O modo muda a cada acionamento: **Ciclo normal** (vermelho → amarelo → verde em sequência), **Só vermelho** (sinal de parada), **Amarelo piscante** (atenção/modo noturno), **Desligado** (manutenção). Conceitos: **máquina de estados** (a variável `mode` determina qual comportamento executar), **alternância cíclica de modos com módulo** (`(mode + 1) % 4` → ciclo infinito 0→1→2→3→0), **temporização sem bloqueio** (as fases dos LEDs são temporizadas…

Raspberry Pi Pico: debounce de botão com IRQ ou consulta por software (GP5 + GP4)
Você pressiona o botão uma vez e o código conta 3-4? Isso é **oscilação dos contatos** — os contatos metálicos oscilam por microssegundos! Compare 2 métodos de contagem lado a lado no Monitor Serial: **consulta sem filtro** (detecta as oscilações e conta a mais) e **IRQ + debounce por software** (contagem correta). Aprenda a física da oscilação dos contatos, debounce por software (`ticks_diff() > 50ms`), registro de interrupção com **Pin.irq()**, disparo **IRQ_FALLING**, rotinas ISR, `global` e…

Areia digital controlada por inclinação com Arduino (MPU-6050 + matriz NeoPixel 8x8)
Areia de LEDs que escorre para o lado em que você inclina o circuito! O acelerômetro **MPU-6050** mede a inclinação, e 24 grãos na **matriz NeoPixel 8x8** caem na direção da gravidade e se acumulam nas bordas como areia de verdade. Um **botão de tema** alterna entre as cores de areia, água, lava e arco-íris. Leitura I2C sem biblioteca, conversão da inclinação em direção da gravidade e um algoritmo simples de queda de areia em um só projeto.

Theremin ultrassônico com Arduino (HC-SR04 + anel NeoPixel + buzzer)
Um instrumento musical que você toca sem encostar, só movendo a mão no ar! Conforme sua mão se aproxima do **HC-SR04**, o **buzzer passivo** toca notas mais agudas e o **anel NeoPixel de 24 LEDs** mostra cada nota pela cor e pelo nível de preenchimento. Um botão alterna entre dois modos: no modo **SCALE**, cada distância corresponde a uma nota de uma escala pentatônica; no modo **GLIDE**, o som varia suavemente como em um filme antigo de ficção científica. Sua mão cria a melodia, não o código.

Jogo de cabo de guerra com LEDs e Raspberry Pi Pico (fita NeoPixel + 2 botões + buzzer)
Duelo de botões para dois jogadores! O **Raspberry Pi Pico** transforma uma **fita NeoPixel WS2812B** de 30 LEDs em uma corda: vermelho à esquerda, azul à direita. Cada toque avança sua cor em um LED; preencha a fita para vencer a rodada e ganhe 3 rodadas para vencer a partida. Se apertar cedo demais na contagem regressiva, você perde terreno; o **buzzer passivo** dá um clique diferente a cada jogador, e a partida termina em um arco-íris. `neopixel`, debounce e som sem bloqueio em MicroPython.

Fogueira de LEDs com Raspberry Pi Pico (matriz NeoPixel 8x8 + potenciômetro + buzzer)
Uma fogueira que não queima nem aquece, mas estala! O **Raspberry Pi Pico** desenha uma chama realista em uma **matriz NeoPixel 8x8**, recalculada a cada quadro: surgem faíscas na base, o calor se dissipa ao subir e o brilho vai do vermelho ao branco. Um **potenciômetro** ajusta a altura da chama, um **botão** alterna entre os temas Fogo, Gás, Magia e Ametista, e um **buzzer** acrescenta os estalos da lenha queimando. Animação procedural, ADC, PWM e MicroPython em um só projeto.

Jogo da memória com Raspberry Pi Pico (4 LEDs + 4 botões + buzzer)
Quantas rodadas você consegue completar? O clássico jogo de memória com cores e sons chega à sua mesa com um **Raspberry Pi Pico**. O Pico apresenta uma sequência aleatória de cores, cada uma com seu próprio **LED** e sua própria nota. Repita a sequência na mesma ordem usando **4 botões**; a cada rodada, uma nova cor é adicionada. Se pressionar o botão errado, o **buzzer** toca uma melodia de fim de jogo enquanto a cor correta pisca. Listas, números aleatórios e leitura de botões em um só jogo.

Tetris com Arduino (matriz de LEDs MAX7219 8x32 + 4 botões + buzzer)
Sem tela, só 256 LEDs: Tetris com música em um Arduino! Uma **matriz de LEDs MAX7219 8x32** na vertical vira um campo de jogo com 8 colunas e 32 linhas, e 4 **botões** movem, giram e fazem as peças cair. Um **buzzer passivo** toca o tema de Tetris, as linhas completas piscam e desaparecem, e o jogo acelera a cada 2 linhas. A matriz é controlada **sem biblioteca**, e o recorde fica salvo na **EEPROM**.

Jogo de acertar a toupeira com Arduino (4 LEDs + 4 botões + display TM1637)
Acerte assim que acender! O clássico **acerte a toupeira** na sua mesa: um dos **4 LEDs** acende aleatoriamente e, se você pressionar o **botão** da mesma cor antes de ele apagar, ganha um ponto. A cada 5 acertos, você sobe de nível e as toupeiras ficam à vista por menos tempo. Apertar o botão errado custa 1 ponto e 3 segundos. O tempo restante e a pontuação aparecem no **TM1637**, o recorde fica na **EEPROM**, e um **buzzer passivo** dá um som próprio a cada buraco.
