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 :
- Arduino (como no)
- Módulo Mp3 basado en chip VS 1XXX
- Modulo SD (también se puede conseguir en ebay)
- LCD 4x20 caracteres
- Pequeño amplificador
- 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.
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 MP3 | Tarjeta SD | LCD | Botones |
| 0 | -- | -- | -- | Adelante |
| 1 | -- | -- | -- | Atrás |
| 2 | DREQ | -- | -- | -- |
| 3 | -- | -- | RS | -- |
| 4 | -- | -- | ENABLE | -- |
| 5 | (RESET) | -- | -- | -- |
| 6 | CS (XCS) | -- | -- | -- |
| 7 | DCS (BSYNC) | -- | -- | -- |
| 8 | -- | -- | -- | Encoder A |
| 9 | -- | CS (CD/DAT3-1) | -- | -- |
| 10 | -- | -- | -- | Encoder B |
| 11 | MOSI (SI) | MOSI (CMD-2) | -- | -- |
| 12 | MISO (SO) | MISO (DATO-7) | -- | -- |
| 13 | CLK (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):
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:
Aquí os dejo unas cuantas fotos del proceso de montaje :
En el próximo post el código ...
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:
Aquí os dejo unas cuantas fotos del proceso de montaje :
En el próximo post el código ...
Suscribirse a:
Enviar comentarios (Atom)
Entradas antiguas
-
▼
2012
(8)
- ► septiembre (3)


14 comments
Muy interesante el proyecto, la verdad que tiene su mérito. ¿Podrías poner más detalle del amplificador que has utilizado?
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
Enhorabuena!
Excelente proyecto.
Para entretenerse una temporada.
Muchas Gracias, me alegro de que te guste.
Seguiré trabajando para realizar algunas mejoras.
que buen proyecto felicidades
Gracias. Un saludo.
Me encantó! Proyectos como éste motivan! Saludos!
@Danielé
Gracias. Me alegro de que te guste. Un saludo.
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 ?
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
@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.
@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.
Saludos! Genial idea. Justo lo que tenia en mente como mi proyecto de invierno.
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?
Publicar un comentario en la entrada