Construa um Mini Piano com Arduino UNO – Tutorial Passo a Passo
Componentes e Materiais
| Arduino UNO | 1 |
| Placa de ensaio (genérica) | 1 |
| Chaves push-button 12mm (SparkFun) | 7 |
| Fios jumpers (genéricos) | 1 |
| Buzzer | 1 |
Ferramentas Necessárias
- Ferro de solda (genérico)
Sobre o Projeto
Passo 1: Peças e Materiais
As peças necessárias são:
- Arduino
- Buzzer Piezo
- Botões push-button – 7 unidades
- Cabos jumpers
Passo 2: Conexões
Os botões são conectados aos pinos D4 a D10 do Arduino.
O Buzzer Piezo → pino D11 do Arduino.
Passo 3: O Código
Antes de começar a tocar, você precisará obter e instalar a biblioteca Tone Arduino se ainda não estiver instalada. Pode ser baixada no GitHub. Se não souber como instalar bibliotecas de terceiros na Arduino IDE, consulte este guia no Arduino.cc. Abaixo, há um arquivo zip com o código do Piano Arduino. Baixe, descompacte, abra Arduino_Piano.ino na IDE e carregue no Arduino.
Arquivo: Arduino_Piano.rar (download)
Passo 4: Toque!
Pronto! Agora você pode pressionar as teclas e ouvir as notas correspondentes pelo buzzer. Se a nota não estiver precisa, ajuste o valor da nota no sketch para obter o tom correto. Também pode alterar a escala musical descomentando uma das escalas incluídas ou criar a sua própria! Se fizer seu próprio piano, comente e mostre fotos e vídeos. Adoraríamos ver instrumentos criativos!
Deixe um joinha se ajudou e siga o canal para mais projetos interessantes :)
Obrigado por ler!
Funcionamento do Projeto
O código utiliza a biblioteca Tone para gerar frequências musicais nos pinos PWM. Cada botão está associado a uma nota (Dó, Ré, Mi, Fá, Sol, Lá, Si). Quando um botão é pressionado (nível LOW devido ao pull-up interno), a nota correspondente é tocada no buzzer e o LED interno (pino 13) acende. Ao soltar todos os botões, o som para e o LED apaga.
Código
// Arduino Piano
/* Visite o canal para mais projetos interessantes
https://www.youtube.com/channel/UCks-9JSnVb22dlqtMgPjrlg */
#define T_C 262
#define T_D 294
#define T_E 330
#define T_F 349
#define T_G 392
#define T_A 440
#define T_B 493
const int C = 10;
const int D = 9;
const int E = 8;
const int F = 7;
const int G = 6;
const int A = 5;
const int B = 4;
const int Buzz = 11;
const int LED = 13;
void setup() {
pinMode(LED, OUTPUT);
pinMode(C, INPUT); digitalWrite(C, HIGH);
pinMode(D, INPUT); digitalWrite(D, HIGH);
pinMode(E, INPUT); digitalWrite(E, HIGH);
pinMode(F, INPUT); digitalWrite(F, HIGH);
pinMode(G, INPUT); digitalWrite(G, HIGH);
pinMode(A, INPUT); digitalWrite(A, HIGH);
pinMode(B, INPUT); digitalWrite(B, HIGH);
digitalWrite(LED, LOW);
}
void loop() {
while(digitalRead(C) == LOW) { tone(Buzz, T_C); digitalWrite(LED, HIGH); }
while(digitalRead(D) == LOW) { tone(Buzz, T_D); digitalWrite(LED, HIGH); }
while(digitalRead(E) == LOW) { tone(Buzz, T_E); digitalWrite(LED, HIGH); }
while(digitalRead(F) == LOW) { tone(Buzz, T_F); digitalWrite(LED, HIGH); }
while(digitalRead(G) == LOW) { tone(Buzz, T_G); digitalWrite(LED, HIGH); }
while(digitalRead(A) == LOW) { tone(Buzz, T_A); digitalWrite(LED, HIGH); }
while(digitalRead(B) == LOW) { tone(Buzz, T_B); digitalWrite(LED, HIGH); }
noTone(Buzz);
digitalWrite(LED, LOW);
}
Repositório do Projeto
https://github.com/Rahul24-06/Mini-Piano
Esquemáticos
Explicado no vídeo. Consulte a imagem:
Processo de manufatura
- Crie uma Fechadura RFID Segura com Arduino – Guia Passo a Passo
- Dados Digital com Arduino: Gere Números Aleatórios 1-6 em LCD 16x2
- Construa um Piano Portátil de Toque Capacitivo com Arduino – Guia Passo a Passo
- Construa um Homem de Ferro com Arduino: Componentes, Sensores e Guia Passo a Passo
- Find Me: Localizador Inteligente de Objetos com Arduino e Bluetooth
- Construa um Braço Robótico 3D Impresso Funcional com Arduino – Guia Passo a Passo
- Controlador de Umidificador DIY com Arduino e Relé – Configuração Segura de Alta Tensão
- Relógio Preciso de 7 Segmentos com Arduino Pro Mini e RTC DS1302
- PiBot: Robô Pianista Arduino para Performance Musical de Precisão
- Tutorial Arduino Iniciante 01: Comece seu Primeiro Projeto