Arduino, Internet das Coisas e Computação vestível

Você está em » Home : Módulos :: Áudio ::: Módulo Player - WTV020M01

[Voltar]

[Avançar]

Módulo Player - WTV020M01 e WTV020-SD

Descrição

Esse módulo é um dispositivo de reprodução de áudio. Possui um slot para inserção de cartão microSD de 32MB à 1GB onde são armazenados os arquivos de áudio. Os formatos suportados são WAV e AD4, com taxa de amostragem entre 6KHz a 36KHz para os arquivos de voz no formato AD4, e de 6KHz a 16KHz para os arquivos de voz no formato WAV.

O módulo pode ser utilizado de quatro maneiras: 1) Conectado ao arduino (Two Line Serial Mode application), onde utiliza-se 4 pinos para comunicação com o módulo e controle das funções de reproduzir música, pausar, volume, etc.; 2) Sem arduino, no MODO MP3, onde pode-se utilizar push-buttons para acionar os pinos do módulo e executar as mesmas funções de reprodução de música mencionadas acima; 3) Key Mode; 4) Loop Play After Power.

A ficha de dados pode ser acessada aqui (datasheet).

Caracteristicas

  • Tensão: 2.6 à 3.6V
  • Capacidade do cartão SD: 32MB à 1GB
  • Sampling rate AD4: 6KHz to 32KHz, 36KHz
  • Sampling rate WAV: 6KHz to 16KHz
  • Saída de áudio: 16bit DAC e PWM
  • Número máximo de arquivos: 512
  • Dimensões: 21 x 20 x 4,5mm

Pinagem

Abaixo, indicativo da pinagem para conexão com o arduino. Neste tipo de ligação existem quatro portas de comunicação, chamadas de RESET, CLK, DI e BUSY. A biblioteca para programação pode ser baixada em: Wtv020sd16

PINO
SISTEMA
FUNÇÃO
ARDUINO
1
Reset
Porta de comunicação Reset (resetPin)
Pino 4
2
Audio-L
Saida de áudio para amplificador
 
3
NC
NC
 
4
Speak +
Saida + para auto-falante
 
5
Speak -
Saida - para auto-falante
 
6
NC
NC
 
7
P04/CLK
Porta de comunicação CLK (clockPin)
Pino 5
8
GND
Terra (-)
GND
9
K5/A5/SBT
PAUSE / PLAY
 
10
P05/DI
Porta de comunicação DI (dataPin)
Pino 6
11
NC
NC
 
12
K2/A1
PREV
 
13
K1/A0
NEXT
 
14
NC
NC
 
15
P06/BUSY
Porta de comunicação Busy (busyPin)
Pino 7
16
VDD
Corrente de alimentação (+)
3.3V


Projeto(s) relacionado(s)


Projeto player de música com teclado

O projeto utiliza os módulos Touch Sensor 12 Key, Player - WTV020M01, Amplificador de Áudio LM386 e um alto-falante para acionar músicas que estão armazenados em um Cartão Micro SD de até 2GB. Os arquivos de áudio armazenados no cartão estão no formado AD4.

// Projeto: Modulo WTV020M01 (WTV020-SD) Executa música 
// Autor: André Silveira
// Data: 15/05/2018 

#include <Wire.h>
#include <Wtv020sd16p.h>
#include <Adafruit_MPR121.h>

int resetPin = 4;  // Pino Reset (RESET)
int clockPin = 5;  // Pino clock (P04/CLK)
int dataPin = 6;   // Pino data (P05/DI)
int busyPin = 7;   // Pino busy (P06/BUSY)

int tecla  = 0;      // Tecla apertada 
int volume = 8;   // Volume do aparelho 
int musica = 0;   // Musica tocada 

Adafruit_MPR121 teclado = Adafruit_MPR121(); // Cria instância da Classe Adafruit_MPR121
Wtv020sd16p tocador(resetPin,clockPin,dataPin,busyPin); // Cria instância da Classe Wtv020sd16p 

void setup() {

     Serial.begin(9600);
     tocador.reset();             // Initializa o módulo Wtv020sd16p
     tocador.setVolume(volume);   // Configura volume do módulo Wtv020sd16p

     if  (!teclado.begin(0x5A)) {   // Localiza teclado do módulo Adafruit_MPR121
          Serial.println("Sensor não Encontrado");
          while (1);
     }
     Serial.println("Sensor encontrado");
}

void loop() {

   tecla = teclado.touched(); // Verifica tecla apertada
   switch (tecla) {
       case 0:  // MUSICA 0
            musica=0;
            TocaAudio(0);
            break;
       case 1:  // VOLUME AUMENTA
            volume=volume+1;
            if (volume > 8) {
                volume = 8;
            }
            tocador.setVolume(volume);
            break;
       case 2:  // MUSICA 1
            musica=1;
            TocaAudio(1);
            break;
       case 3:  // VOLUME DIMINUI
            volume=volume-1;
            if (volume < 0) {
                volume = 0;
            }
            tocador.setVolume(volume);
            break;
       case 4:  // MUSICA 2
            musica=2;
            TocaAudio(2);
            break;
       case 5:  // VOLTAR
            musica = musica -1;
            if (musica < 0) {
                musica = 0;                
            }
            TocaAudio(musica);
            break;
       case 6:  // MUSICA 3
            musica=3;
            TocaAudio(3);
            break;
       case 7:   // PLAY
            tocador.playVoice(musica);
            break;
       case 8: // MUSICA 4 
            musica=4;
            TocaAudio(4);
            break;
       case 9:   // STOP
            tocador.stopVoice();
            break;
       case 10:  // MUSICA 5 
            musica=5;
            TocaAudio(5);
            break;
       case 11:  
            musica = musica +1;
            if (musica > 5) {
                musica = 5;
            }
            TocaAudio(musica);
            break;
       default: 
            break;
   }
   delay (5000);   
}

void TocaAudio(int i) {
    Serial.println("tocando: ");
    Serial.print(i);
    tocador.playVoice(2);
    tocador.asyncPlayVoice(i); 
}

 

[Voltar]

[Avançar]