O módulo ISD1820 é uma solução integrada para gravação e reprodução de áudio, capaz de operar com durações entre 8 e 20 segundos. Equipado com um microfone embutido e botões físicos de controle, permite a captura e execução de som de forma autônoma. Além da operação manual, o dispositivo expõe pinos de controle lógico, viabilizando o acionamento direto via microcontroladores. Sua saída de áudio suporta alto-falantes de até 3W ou a conexão a sistemas de som ativos externos.
Componentes Necessários
- Placa Arduino Uno
- Módulo de Gravação/Reprodução ISD1820
- Alto-falante de 8Ω 0.5W
- Sensor de Presença PIR HC-SR501 (para o projeto de alarme)
- LEDs e resistores (para indicação visual)
- Protoboard e cabos jumper
Ambiente de Desenvolvimento
IDE Arduino (versão 1.8.19 ou superior)
Experimento 1: Ciclo Automatizado de Gravação e Reprodução
Este script demonstra como acionar o módulo ISD1820 via Arduino para gravar um áudio de 10 segundos e, em seguida, reproduzi-lo automaticamente pelo mesmo período.
const int pinoGravar = 5;
const int pinoTocar = 6;
void setup() {
pinMode(pinoGravar, OUTPUT);
pinMode(pinoTocar, OUTPUT);
// Garante que os pinos iniciem em estado LOW
digitalWrite(pinoGravar, LOW);
digitalWrite(pinoTocar, LOW);
}
void loop() {
// Inicia a captura de áudio por 10 segundos
digitalWrite(pinoGravar, HIGH);
delay(10000);
digitalWrite(pinoGravar, LOW);
// Pequena pausa de transição
delay(100);
// Aciona a reprodução do áudio armazenado
digitalWrite(pinoTocar, HIGH);
delay(10000);
digitalWrite(pinoTocar, LOW);
// Intervalo antes de reiniciar o ciclo
delay(500);
}
Experimento 2 e 3: Indicação Visual e Reprodução Contínua
Para aprimorar a interatividade, é possível adicionar um LED que pisca durante o processo de gravação (ex: captura de 6 segundos), sinalizando visualmente a atividade do microfone. Na fase de reprodução, o áudio pode ser executado em loop, com um intervalo de 1 segundo entre cada repetição, acionando o pino de play ciclicamente através de uma estrutura de repetição no código.
Experimento 4: Alarme Sonoro com Detecção de Movimento
Integrando o módulo ISD1820 com um sensor de presença PIR, construímos um sistema de segurança que emite um alerta sonoro pré-gravado sempre que um intruso é detectado na área de cobertura do sensor.
const int sensorPresenca = 2;
const int saidaAudio = 7;
void setup() {
Serial.begin(9600);
pinMode(sensorPresenca, INPUT);
pinMode(saidaAudio, OUTPUT);
digitalWrite(saidaAudio, LOW);
}
void loop() {
bool movimentoDetectado = digitalRead(sensorPresenca);
if (movimentoDetectado == HIGH) {
Serial.println("Alerta: Intruso detectado!");
digitalWrite(saidaAudio, HIGH); // Dispara a reprodução do alerta
} else {
Serial.println("Status: Area segura.");
digitalWrite(saidaAudio, LOW); // Mantém o pino em estado baixo
}
delay(1000); // Estabilização da leitura do sensor
}