Páginas

miércoles, 20 de febrero de 2013

WTV020-SD-16P II Arduino


    

 

 

 

 

 

 

 

 

 

 

Decodificador WTV020-SD-16P II:

He continuado trasteando este módulo y tras hacer varias pruebas he conseguido un software que convierta de MP3 a A4D el UsbRecorder de SOMO descargar Aquí (URL alternativa Aquí) en Sample rate: 32000


He hecho un pequeño ejemplo con el cual el Arduino reproducirá todos los tracks de la tarjeta, muy importante el nombre de los ficheros, ya que tienen que estar en el formato:

0000.a4d
0001.a4d
0002.a4d

El ejemplo:


// Modulo WTV020-SD-16P
// Conectamos el sensor de la siguiente forma:  
// GND -> GND  
// VDD -> 3,3V  
// CLK -> D3  
// DAT -> D4
// BUSY-> D5
// http://arubia45.blogspot.com.es/  
  
// Librerias necesarias  
#include "Wtv020sd16p.h"

int resetPin = 2;  // The pin number of the reset pin.
int clockPin = 3;  // The pin number of the clock pin.
int dataPin = 4;  // The pin number of the data pin.
int busyPin = 5;  // The pin number of the busy pin.

Wtv020sd16p wtv020sd16p(resetPin,clockPin,dataPin,busyPin);

void setup() {
  Serial.begin(9600);  
  //Initializes the module.
  wtv020sd16p.reset();
  wtv020sd16p.playVoice(0);
}

int i = 0;

void loop() {
  
  delay(2000);
  if (digitalRead(busyPin) == 0) {
    wtv020sd16p.stopVoice();
    Serial.println("Parado track");
    wtv020sd16p.asyncPlayVoice(i);
    Serial.print("Inicio del track ");
    Serial.println(i);
    i++;
  }
  else {
    Serial.print("Continua track ");
    Serial.println(i-1);
  }
}





Bajar Ejemplo (URL alternativa Bajar Ejemplo

Para este ejemplo he cargado algo de mayor categoría, Metallica.



 

19 comentarios:

  1. el modulo no repruduce nada que hago?

    ResponderEliminar
  2. Hola, revisa las conexiones sobretodo y confirma que en la SD metes los tracks de ejemplo.

    Un saludo.

    ResponderEliminar
  3. Hola! Es posible hacer una botonera para el arduino y que con cada boton se reproduzca un tema distinto fijo. Ej: Con el btn 1 se reproduce 0001.a4d. Con el btn 5 se reproduce 0005.a4d, etc. Pregunto porque no veo como seleccionar el archivo. Gracias!!

    ResponderEliminar
    Respuestas
    1. Hola, sí que se podría hacer. Así sin mirarlo en profundidad, lo podrías hacer accediendo de forma secuencial. O sea pasando los tracks anteriores al que quieres que se reproduzca.

      Un saludo.

      Eliminar
  4. Hola, a mi tampoco me reproduce nada con el arduino, pero en modo autónomo si... alguna idea? Gracias!

    ResponderEliminar
    Respuestas
    1. Hola, revisa el circuito si está bien montado y las conexiones que son muchas.

      Un saludo.

      Eliminar
  5. hola,

    este modulo podría conectarse a una entrada de un equipo de música?

    buen trabajo, un saludo

    ResponderEliminar
    Respuestas
    1. Hola, se podría aunque yo amplificaría antes la señal con un pequeño amplificador. Mira este otro de mis post:

      http://arubia45.blogspot.com.es/2013/02/mini-amplificador-3wx2-arduino.html

      Un saludo.

      Eliminar
  6. Respuestas
    1. Hola, yo he utilizado uno pequeño y con poca resistencia.

      Un saludo.

      Eliminar
  7. Hola

    Se puede reproducir una pista en concreto a través de algun comando

    ResponderEliminar
  8. Con este codigo ya funciona bien el modulo?

    ResponderEliminar
    Respuestas
    1. Hola, debería de funcionar correctamente.

      Eliminar
    2. Antes de hacer funcionar el modulo, tengo que convertir las canciones a formato a4d para que el modulo las lea y reproduzca?

      Eliminar
    3. si, es el formato que reproduce

      Eliminar
  9. disculpa de donde descargo la libreria?

    ResponderEliminar
    Respuestas
    1. Hola, lo tienes en la primera parte del post:ç

      http://arubia45.blogspot.com.es/2013/02/decodificador-wtv020-sd-16p-arduino.html

      Eliminar
  10. Hola, he montado el modulo y todo funciona bien, solo que hasta la pista 9 de ahí en adelante 10, 11, 12 etc no reproduce, he probado con 0010, 0011 etc y nada, alguien le ha pasado o saben de la solución?

    Saludos

    ResponderEliminar