Después de algún tiempo trabajando y peleando,  os presento este nuevo proyecto Arduino: Un completo reproductor de MP3 basado en Arduino.
Como podéis observar en la foto, la idea era construir un reproductor independiente, al estilo de las antiguas radios o 'cassetes', en plena era de los Iphones ....
El reproductor utiliza un pequeño módulo basado en el chip VS1002d de VLSI (ya descatalogado, pero que tenía por un cajón). El módulo en cuestión lo compré en Futurlec . Actualmente se pueden conseguir módulos similares en ebay por algo más de 9€ , aunque el chip es el VS1003 o VS1053. También podéis utilizar una MP3 shield , pero bastante más cara (esta shield ya incluye una ranura SD).
Por lo que he podido ver los tres chips son bastante compatibles en cuanto a la programación, y de hecho casi toda la inicialización la he sacado de la librería para la MP3 Shield de SparkFun ;-)


Bueno el proyecto consta de :
  1. Arduino (como no)
  2. Módulo Mp3 basado en chip VS 1XXX
  3. Modulo SD (también se puede conseguir en ebay)
  4. LCD 4x20 caracteres
  5. Pequeño amplificador
  6. 2 altavoces.
Tanto el módulo SD como el MP3 se conectan al Arduino mediante el bus SPI. El LCD lo he conectado en modo 4 bits para ahorrar pines del Arduino.
Aquí os muestro una tabla con las distintas conexiones entre el Arduino y los distintos elementos. Entre paréntesis, la denominación de las distintas conexiones en los módulos (y la patilla correspondiente en el caso de la SD). Como podéis ver, he tenido que utilizar las entradas analógicas como salidas digitales para controlar el LCD.

PIN Arduino Módulo MP3Tarjeta SDLCDBotones
0-- -- --Adelante
1-- -- --Atrás
2DREQ-- ----
3-- -- RS--
4-- -- ENABLE  --
5(RESET)-- ----
6CS (XCS)-- ----
7DCS (BSYNC)   -- ----
8-- -- --Encoder A
9-- CS (CD/DAT3-1)   ----
10-- -- --Encoder B
11MOSI (SI) MOSI (CMD-2)----
12MISO (SO)MISO (DATO-7)----
13CLK (SCLK)CLK (5)----
A0-- -- D4--
A1-- -- D5--
A2-- -- D6--
A3-- -- D7--
A4-- -- ----
A5-- -- ----

Tanto el módulo MP3 como la tarjeta SD funcionan con 3,3V, así que toca adaptar niveles para hacerlos compatibles con los 5V del Arduino. La opción más sencilla es utilizar divisores de tensión con un par de resistencias , en mi caso he utilizado un divisor formado por una resistencia de 2,2K y una de 3,3 K. Para la señales hacia el micro no hace falta, los 3,3V se interpretan como nivel alto sin problema.
El esquema es el siguiente (clik para agrandar):
Esquema reproductor mp3 arduino vs1003
Según los módulos que utilicéis para el MP3 y la SD, deberéis ajustar los pines de los conectores (el orden mostrado en el esquema no corresponde a ningún módulo en concreto).
Si se utiliza el MP3 shield de SparkFun, revisad la documentación para ajustar  los pines de CS tanto para el MP3 como para la SD y modificarlo si es necesario en el códio fuente.

El resultado:

Reproductor MP3 Arduino VS1003

Aquí os dejo unas cuantas fotos del proceso de montaje :



En el próximo post el código ...


Si te ha gustado, recuerda compartirlo en tu red social favorita. Gracias

24 comments

Anónimo
30 de octubre de 2012, 3:20

Muy interesante el proyecto, la verdad que tiene su mérito. ¿Podrías poner más detalle del amplificador que has utilizado?

30 de octubre de 2012, 6:01

Pues la verdad, tanto el amplificador como los dos altavoces pertenecen a unos altavoces comprados en una tienda de los chinos (4€) ....
Puedes ver una foto si entras en facebook en el enlace del menú.
http://sphotos-b.ak.fbcdn.net/hphotos-ak-prn1/553872_476782862343016_992743569_n.jpg

1 de noviembre de 2012, 18:32

Enhorabuena!
Excelente proyecto.
Para entretenerse una temporada.

2 de noviembre de 2012, 1:08

Muchas Gracias, me alegro de que te guste.
Seguiré trabajando para realizar algunas mejoras.

9 de noviembre de 2012, 6:28

que buen proyecto felicidades

9 de noviembre de 2012, 13:38

Gracias. Un saludo.

12 de diciembre de 2012, 13:08

Me encantó! Proyectos como éste motivan! Saludos!

13 de diciembre de 2012, 0:49

@Danielé
Gracias. Me alegro de que te guste. Un saludo.

30 de diciembre de 2012, 6:15

Excelente el proyecto ! ¿Qué tan difícil sería ponerle una placa de red wi-fi y que se conecte a sitios para escuchar radio o música ?

4 de enero de 2013, 11:42

Un proyecto muy interesante, pero me surge una duda que modelo de encoder utilizaste ya que en el esquema no sale el tipo es para definir bien su funcionamiento. Gacias

7 de enero de 2013, 0:50

@SZ

Pues es algo que tengo en mente.
puedes encontrar información sobre un acceso radio en internet en Arduino on Ice: Internet Radio via Shoutcast. Luego tendrías que utilizar una "WI-Fi Shield" ....
Estoy en ello , es posibre que dentro de poco publique algo sobre el tema.
Un saludo.

7 de enero de 2013, 0:55

@Jose Maria Modamio
Es un encoder rotatorio típico, puedes encontrarlos en ebay, o en tiendas de electrónica, por ejemplo en este enlace BricoGeek .
Saludos.

Sergio
22 de enero de 2013, 14:09

Saludos! Genial idea. Justo lo que tenia en mente como mi proyecto de invierno.

11 de marzo de 2013, 12:12

hola me gusto tu proyecto quiero hacer algo parecido pero en vez de tener pulsadores para avanzar y retroceder
quisiera ponerle un teclado para seleccionar el track especifico que quiero oir t.tendrias algo parecido?

20 de junio de 2013, 19:47

hola muy bueno lo tuyo quería saber si se podría transferir música vía Bluetooth con algún shield saludos =)

21 de junio de 2013, 3:38

@Wilson Carrizo
Puedes encontrar en ebay módulos bluetooth stereo si es a eso lo que te refieres:
Sólo el módulo
Montado

Saludos

1 de agosto de 2013, 10:00

Buenísimo el proyecto. Cómo se hace para que reciba las señales desde un reproductor de CD en reemplazo o adicional a la SD?

1 de agosto de 2013, 23:06

@mpadm
Pues me parece que debe ser un poco complicado. Con un CD no puedes utilizar el interfaz SPI. Hay una librería para acceder a un CD desde un Arduino (pero tiene que ser Mega por la cantidad necesaria de pines para el interfaz IDE). IDE Disk Support for Arduino Mega

3 de agosto de 2013, 18:22

Arduino Guay:

Gracias por la respuesta. Haré las investigaciones del caso. La idea es construir un CD Player Profesional que acepte archivos wav, MP3, el uso de USB´s, etc.

Anónimo
29 de octubre de 2013, 15:09

Buen proyecto!

30 de octubre de 2013, 2:29

@AnónimoGracias !!

12 de noviembre de 2013, 14:50

muy buen proyecto!!! ahora me surgio la intriga si se podra hacer algo igual pero que reproduzca mp4 o algun formato de video. tenes idea si hay algun modulo que haga lo mismo que el vs1xxx? investigare :-/

18 de marzo de 2014, 20:05

Tienen el codigo disponible para compilador CCS?
Saludos

2 de abril de 2014, 13:31

@Mario Alonso
No sólo para Arduino :-(

Publicar un comentario en la entrada

Temas

Arduino (8) Led RGB (3) Luces (3) FFT (2) MP3 (2) Micrófono (2) reproductor (2) vs1002 (2) vs1003 (2) Control Remoto (1) MOC3041 (1) Navidad (1) Optoacoplador (1) Potencia (1) SD (1) TSOP1738 (1) Triac (1) ULN2003 (1) WS2812 (1) WS2812B (1) Zumbador (1) vs1053 (1)

Google+

English Version

English Version
Arduino is Cool!!

También en Facebook

Buscar en el blog

Cargando...