Tocando sons em um alto-falante com Arduino
Neste artigo iremos criar um projeto simples mas muito interessante: iremos fazer
com que o Arduíno toque sons de frequências diversas em um alto-falante (ou outro
transdutor de áudio qualquer).
Para isso usaremos a função tone do Arduino. Essa função gera um sinal sonoro com
uma frequência e duração ajustáveis, sendo que ajustaremos a frequência usando um
potenciômetro e a duração via código.
Conectaremos o potenciômetro de tom ao pino de entrada analógica 0 (A0) do
Arduino, e usaremos um outro potenciômetro para controlar o volume do som que
será reproduzido no alto-falante. Confira a lista de componentes necessária e o
esquema do circuito:
Lista de componentes:
▪ 1 Arduíno Uno1 Potenciômetro de 1KΩ
▪ 1 Potenciômetro de 10KΩ
▪ 1 Alto-falante de 8Ω (ou outro transdutor, como um buzzer)
Esquema do circuito:
Veja um desenho das conexões dos componentes ao Arduíno:
E, finalmente, o código que será utilizado:
const int pino_falante = 9; // Conectar falante ao pino 9
const int pot_freq = 0; // potenciômetro para ajuste de frequência - pino A0
void setup(){// Aqui não vai nada neste sketch
void loop(){
int ler_potenc = analogRead(pot_freq); // Ler entrada para ajuste de frequência
// mapear os valores analógicos lidos para valores significativos:
int frequencia = map(ler_potenc, 0, 1023, 100, 3000); // 100 Hz a 3 KHz
int tempo = 300; //duração do tom, em ms
tone(pino_falante, frequencia, tempo); // envia som ao falante
delay(300); //pausa de 300ms