- Descrição: O Módulo Acelerômetro 3 Eixos MMA7361 é um sensor utilizado…
Como usar com Arduino – Buzzer 5V Ativo
– Descrição:
O Buzzer Ativo 5V é um componente utilizado para emitir sinais sonoros. Este componente possui um circuito mais complexo que o Buzzer Passivo, porém seu uso é mais simples. Este Buzzer Ativo 5V conta um circuito oscilador que produz o som e só necessita de ser energizado.
– Especificações e características:
– Tensão de operação: 3,5 a 5VDC
– Tipo: ativo
– Aplicações:
Projetos com Arduino ou outras plataformas microcontroladas em que seja necessário executar tons ou avisos sonoros.
– Proposta da prática:
Utilizar o Buzzer 5V Ativo em conjunto com o Arduino para executar a Marcha Imperial do Star Wars.
– Lista dos itens necessários:
01 – Arduino com Cabo USB
01 – Buzzer Ativo 5V
02 – Cabos Jumper macho-macho
– Esquema de ligação da prática:
– Tutorial de instalação e configuração do ambiente de programação do Arduino:
Arduino – Instalação e Configuração da IDE no Windows
– Código:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 |
//DECLARAÇÃO DAS FREQUÊNCIAS DAS NOTAS MÚSICAIS const float c = 261.63; //Do (Oitava 0) const float d = 293.66; //Re (Oitava 0) const float e = 329.63; //Mi (Oitava 0) const float f = 349.23; //Fa (Oitava 0) const float g = 392.00; //Sol (Oitava 0) const float gS = 415.30; //Sol# (Oitava 0) const float a = 440.00; //La (Oitava 0) const float b = 466.16; //La# (Oitava 0) const float cH = 523.25; //Do (Oitava 1) const float cSH = 554.37; //Do# (Oitava 1) const float dH = 587.33; //Re (Oitava 1) const float dSH = 622.25; //Re# (Oitava 1) const float eH = 659.26; //Mi (Oitava 1) const float fH = 698.46; //Fa (Oitava 1) const float fSH = 739.99; //Fa# (Oitava 1) const float gH = 783.99; //Sol (Oitava 1) const float gSH = 830.61; //Sol# (Oitava 1) const float aH = 880.00; //La (Oitava 1) const int pinoBuzzer = 8; //PINO DIGITAL UTILIZADO PELO BUZZER int contador = 0; //VARIÁVEL DO TIPO INTEIRA void setup(){ pinMode(pinoBuzzer, OUTPUT); //DEFINE O PINO COMO SAÍDA } void loop(){ primeraSecao(); //CHAMADA DE SONS DA PRIMEIRA SEÇÃO segundaSecao(); //CHAMADA DE SONS DA SEGUNDA SEÇÃO //VARIANTE 1 tom(f, 250); tom(gS, 500); tom(f, 350); tom(a, 125); tom(cH, 500); tom(a, 375); tom(cH, 125); tom(eH, 650); delay(500); //INTEVALO DE 500 MILISSEGUNDOS segundaSecao(); //CHAMADA DE TONS DA SEGUNDA SEÇÃO //VARIANTE 2 tom(f, 250); tom(gS, 500); tom(f, 375); tom(cH, 125); tom(a, 500); tom(f, 375); tom(cH, 125); tom(a, 650); delay(650); //INTEVALO DE 650 MILISSEGUNDOS } //FUNÇÃO RESPONSÁVEL POR EXECUTAR CADA TOM void tom(int frequencia, int duracao){ //EXECUTA O TOM CONFORME OS PARÂMETROS PASSADOS tone(pinoBuzzer, frequencia, duracao); if(contador % 2 == 0){ //SE contador FOR UM NÚMERO PAR, FAZ delay(duracao); //INTERVALO DE ACORDO COM O VALOR DA VARIÁVEL } else //SENÃO, FAZ { delay(duracao); //INTERVALO DE ACORDO COM O VALOR DA VARIÁVEL } noTone(pinoBuzzer); //BUZZER PERMANECE DESLIGADO delay(50); //INTEVALO DE 50 MILISSEGUNDOS contador++; //INCREMENTADOR O CONTADOR } //FUNÇÃO DA PRIMEIRA SEÇÃO void primeraSecao(){ tom(a, 500); tom(a, 500); tom(a, 500); tom(f, 350); tom(cH, 150); tom(a, 500); tom(f, 350); tom(cH, 150); tom(a, 650); delay(500); //INTEVALO DE 500 MILISSEGUNDOS tom(eH, 500); tom(eH, 500); tom(eH, 500); tom(fH, 350); tom(cH, 150); tom(gS, 500); tom(f, 350); tom(cH, 150); tom(a, 650); delay(500); //INTEVALO DE 500 MILISSEGUNDOS } //FUNÇÃO DA SEGUNDA SEÇÃO void segundaSecao(){ tom(aH, 500); tom(a, 300); tom(a, 150); tom(aH, 500); tom(gSH, 325); tom(gH, 175); tom(fSH, 125); tom(fH, 125); tom(fSH, 250); delay(325); //INTEVALO DE 325 MILISSEGUNDOS tom(a, 250); tom(dSH, 500); tom(dH, 325); tom(cSH, 175); tom(cH, 125); tom(b, 125); tom(cH, 250); delay(350); //INTEVALO DE 350 MILISSEGUNDOS } |
– Resultado final:
Gostou desta prática? Então deixa seu comentário, dúvida ou sugestão aí embaixo!
Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop
Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.
Obrigado e até a próxima!
Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.
Postagem anterior: Como usar com Arduino – Módulo Display de 7 Segmentos com 4 Dígitos TM1637
Próxima postagem: Como usar com Arduino – Motor de Passo 28BYJ-48 com Driver ULN2003