fbpx
Miniatura video sr 5

Desenvolvido por 

Mini piano com arduino SR 5, fácil de fazer com um notebook e botões

Criei um piano com arduino, com som de piano de verdade mesmo. um projeto bem simples de piano com o arduino Leonardo e mini botoes, veja o vídeo e descubra a facilidade de fazer.

Veja o vídeo, demostrando o mini piano em funcionamento e ensinado a montar o projeto SR 5

O que você precisa para montar o Mini Piano SR 5

  • Qtd - Descrição
  • 1 - Arduino LEONARDO com cabo usb
  • 1 - Protoboard 400 Pontos
  • 6 - Botões (Push-Button)
  • 6 - Resistores 10K
  • 8 - Jumper (fios) 20cm Macho-Macho
  • 6 - Jumper (fios) rígido pequenos

Vamos colocar a mão na massa

Montagem do projeto

Clique na imagem ao lado. Veja e seguir cada fio e conecta-los ao componentes, caso tenha duvida, veja o vídeo tutorial.

Qualquer duvida, deixe um comentário ou entre em contato conosco.

Esquema de ligação SR 5

Site do Piano virtual

Para tocar o piano virtual acesse: https://recursivearts.com/virtual-piano/

Agora vamos para o Código fonte GRATUITO do nosso projeto

Enviar o código fonte para o arduino

Vamos fazer item por item, tudo bem?

Primeiro você tem que instalar o programa no computador/notebook, acesse esse tutorial de como instalar o arduino no computador clicando aqui.  Após instalar volte aqui e siga o restante das informações aqui.

Código fonte do Mini Piano com arduino SR 5

Selecione todo o código fonte abaixo e copie .

Abra o Programa Arduino, clique em no menu “Arquivo” e depois em “Novo” , apague o código exemplo e cole o código, clique no ícone da  “Seta” para enviar o programa para o arduino.

Não sabe como enviar um programa para o arduino? então veja nosso tutorial de como enviar o programa para o arduino clicando aqui

 

 

Código fonte:

/*
-----------Piano com arduino SR 5------------------------------------------------
Versão do Software: 1.0 SR 5 //não apague essa linha, para futuras consultas
Software open source, favor citar o autor: Seu Robô https://SeuRobo.com.br/
Criado por: Leonardo Campbell - Seu Robô  
*/
//declarando a biblioteca usada de teclado
#include <Keyboard.h>
//configurando as portas dos botões
#define botao1 2
#define botao2 3
#define botao3 4
#define botao4 5
#define botao5 6
#define botao6 7
//criando as variaveis para armazenar o estado do botão
int statusbotao1; 
int statusbotao2; 
int statusbotao3; 
int statusbotao4; 
int statusbotao5; 
int statusbotao6; 
//criando as variaveis para armazenar o ultimo estado do botão
int ultimoclick1 = LOW;    
int ultimoclick2 = LOW; 
int ultimoclick3 = LOW; 
int ultimoclick4 = LOW; 
int ultimoclick5 = LOW; 
int ultimoclick6 = LOW;
//configurando os botoes  
void setup()
{
pinMode(botao1, INPUT_PULLUP);//definindo os pinos do botão como saida com o "o botão para cima"
pinMode(botao2, INPUT_PULLUP);  
pinMode(botao3, INPUT_PULLUP); 
pinMode(botao4, INPUT_PULLUP); 
pinMode(botao5, INPUT_PULLUP); 
pinMode(botao6, INPUT_PULLUP);   
Keyboard.begin();//inicia a biblioteca de teclado
}
void loop(){
// faz a leitura do botão e armazena na variável
int lerbotao1 = digitalRead(botao1);
int lerbotao2 = digitalRead(botao2);
int lerbotao3 = digitalRead(botao3);
int lerbotao4 = digitalRead(botao4);
int lerbotao5 = digitalRead(botao5);
int lerbotao6 = digitalRead(botao6);
if (lerbotao1 != ultimoclick1) { //compara se o botão é diferente da ultima vez que clicou
statusbotao1 = lerbotao1;  //grava o valor ba variavel para comparar ela depois
if (lerbotao1 == HIGH) { //se o botão 1 for pressionado então faça
Keyboard.press('t'); //digite a letra no computador
delay(100); //aguarde um tempo
Keyboard.releaseAll(); //para de pressionar o tecla do pc
}
}
if (lerbotao2 != ultimoclick2) { //compara se o botão é diferente da ultima vez que clicou
statusbotao2 = lerbotao2;  //grava o valor ba variavel para comparar ela depois
if (lerbotao2 == HIGH) { //se o botão 1 for pressionado então faça
Keyboard.press('y'); //digite a letra no computador
delay(100); //aguarde um tempo
Keyboard.releaseAll(); //para de pressionar o tecla do pc
}
}
if (lerbotao3 != ultimoclick3) { //compara se o botão é diferente da ultima vez que clicou
statusbotao3 = lerbotao3;  //grava o valor ba variavel para comparar ela depois
if (lerbotao3 == HIGH) { //se o botão 1 for pressionado então faça
Keyboard.press('u'); //digite a letra no computador
delay(100); //aguarde um tempo
Keyboard.releaseAll(); //para de pressionar o tecla do pc
}
}
if (lerbotao4 != ultimoclick4) { //compara se o botão é diferente da ultima vez que clicou
statusbotao4 = lerbotao4;  //grava o valor ba variavel para comparar ela depois
if (lerbotao4 == HIGH) { //se o botão 1 for pressionado então faça
Keyboard.press('i'); //digite a letra no computador
delay(100); //aguarde um tempo
Keyboard.releaseAll(); //para de pressionar o tecla do pc
}
}
if (lerbotao5 != ultimoclick5) { //compara se o botão é diferente da ultima vez que clicou
statusbotao5 = lerbotao5;  //grava o valor ba variavel para comparar ela depois
if (lerbotao5 == HIGH) { //se o botão 1 for pressionado então faça
Keyboard.press('o'); //digite a letra no computador
delay(100); //aguarde um tempo
Keyboard.releaseAll(); //para de pressionar o tecla do pc
}
}
if (lerbotao6 != ultimoclick6) { //compara se o botão é diferente da ultima vez que clicou
statusbotao6 = lerbotao6;  //grava o valor ba variavel para comparar ela depois
if (lerbotao6 == HIGH) { //se o botão 1 for pressionado então faça
Keyboard.press('p'); //digite a letra no computador
delay(100); //aguarde um tempo
Keyboard.releaseAll(); //para de pressionar o tecla do pc
}
}          
// Atualiza a variável com o valor lido no botão
ultimoclick1 = lerbotao1;
ultimoclick2 = lerbotao2;
ultimoclick3 = lerbotao3;
ultimoclick4 = lerbotao4;
ultimoclick5 = lerbotao5;
ultimoclick6 = lerbotao6;
}

Chegamos ao final, Muito Obrigado, amante de robótica!

Qualquer dúvida, deixe um comentário ou entre em contato!

Grande abraço!

Gostaria de um projeto ou robô que não temos no site?

Então é só clicar no botão abaixo e nos enviar a sua ideia, analisaremos ela e talvez postemos ela com o credito seu caso queira.

Compartilhe com outro amante de robótica!

Compartilhar no facebook
Compartilhar no twitter
Compartilhar no whatsapp
Compartilhar no email

Comentários

Deixe um comentário

Veja os Tutoriais de ROBÔS mais recentes

Veja os TUTORIAIS mais recentes

Veja os Tutoriais de PROJETOS mais recentes