Criar Tons Musicais com Arduino: Um Guia Passo a Passo
Componentes e Materiais
- Arduino UNO × 1
- Alto-falante: 0,25 W, 8 Ω × 1
- Resistor 220 Ω (150–220 Ω) × 1
Aplicativos e Serviços Online
- Arduino IDE
Sobre o Projeto
Neste tutorial, mostro como usar um Arduino para gerar música usando apenas um alto-falante e um resistor. Assim como muitos projetos semelhantes, este produz tons que correspondem às notas de um piano de 88 teclas. No entanto, diferentemente da maioria, não utiliza uma tabela de consulta (lookup table) para obter as frequências. Em vez disso, os tons são gerados por meio de um cálculo que aceita um número de 1 a 88, correspondente a cada tecla do piano.
A biblioteca do Arduino oferece a função tone(), que gera ondas quadradas, mas ela não consegue produzir tons abaixo de 31 Hz. Um piano de 88 teclas possui algumas notas com frequências inferiores a esse limite. Portanto, para cobrir toda a extensão do instrumento, a função tone() não serve. Demonstramos como gerar ondas quadradas usando apenas delayMicroseconds().
O projeto opera em nível de microssegundos (um milionésimo de segundo). A função delayMicroseconds() não consegue atrasar de forma confiável mais do que alguns milhares de microssegundos, o que às vezes é necessário. Mostramos como contornar essa limitação.
Apesar dos desafios, o código final é bastante compacto — cabe praticamente em uma única tela (dependendo da resolução). Sem comentários, mas o código totalmente comentado está disponível na descrição do vídeo.
Código
O código completo está disponível no link do Gist incorporado no projeto original.
Esquemático
Conecte o alto-falante ao GND e ao pino 12 através do resistor.
Processo de manufatura
- Crie um Sistema Ambilight Impressionante para Monitor com Arduino
- Construa um Controle Remoto IR Universal com Arduino: Guia Passo a Passo
- Crie um Botão de Teclado "Socável" Personalizado com Arduino: Guia Passo a Passo
- Conectando Arduino Mega ao Módulo GPS NEO‑6M: Guia Passo a Passo
- Jogo da Velha com Arduino, Matriz LED MAX7219 e Caixa de Papelão
- Construa um Voltímetro DIY com Arduino e Display Nokia 5110 – Guia Passo a Passo
- Eletrodomésticos Ativados por Voz: Controle Bluetooth com Google Assistant
- Conectando Arduino ao NMEA‑0183: Guia Passo a Passo
- Porta Automática com Arduino e Sensor Ultrassônico HC-SR04
- Construa um Carro Controlado por Bluetooth com Arduino: Guia DIY Completo