technolando

Inserisci la tua mail per essere sempre aggiornato:




Costruire un lettore MP3 a cubo

Etichette: , ,

Questo post è tratto dal sito http://elm-chan.org/works/cube/report.html dove è stato presentato un lettore MP3 con la forma di un cubo che può essere pilotato semplicemente spostandolo sui tre assi.





Questa è la simil traduzione del progetto.


Questo MP3 player non ha nessun bottone ma solamente un accelerometro per il controllo. Pertanto i vari comandi sono impartiti inclinando, picchiettando o agitando il cubo. Questo lo rende estremamente interessante e non lo fa sembrare neanche un player MP3.



Schema a blocchi


Microcontrollore
Un ATmega644 è il microcontrollore scelto per questo progetto, è dotato di 64K di memoria flash e 4K di RAM. Come oscillatore è stato utilizzato il quarzo interno da 8MHz.


Sensore di movimento
Un KXM52-1050 (Kionix) è stato scelto come accelerometro. Il range di lavoro è di ±2G, fin troppo per questa applicazione, l'ideale sarebbe un accelerometro da ±5G.


Supporto di registrazione
L'SD Memory Card è di fatto uno standard. Può essere controllata da un micro con pochi pin. E' stato utilizzato il formato FAT per la gestione dei file, fortunatamente si trovano on line diversi esempi anche gratuiti di librerie per implementare questo formato facilmente.

Alimentazione
Siccome un lettore MP3 è un dispositivo portatile, anche questo progetto non poteva che essere alimentato a batterie. In particolare sono state utilizzate due RCR123A(3.6V,650mAh), delle batterie Li-Ion gestite in parallelo. Il tempo di riproduzione si aggira intorno alle 20 ore, quando sono completamente cariche, ma questo tempo dipende anche dal volume di riproduzione. Per maggior sicurezza la gestione della carica è affidata all'integrato BQ2057C (Texas Instruments) e ad un MN1382SLP (Panasonic).

Il circuito è privo di interruttore, viene acceso o spento semplicemente inserendo e rimuovendo l'SD card. La tensione delle batterie alimenta direttamente l'amplificatore audio, e, una volta ridotta e stabilizata, il resto del circuito.

Decoder and Amplificatore
Per decodificare lo stream dati MP3 in dati PCM è stato usato un VS1011e (VLSI
Solutions) che integra un DSP, un DAC e un amplificatore per cuffie. Ma questo amplificatore è troppo debole per poter pilotare direttamente delle casse così è stato previsto un amplificatore in classe D dopo il chip di decodifica, il
TPA2012D2 (Texas Instruments).

Mixer
Il lettore MP3 è stato costruito all'interno della cassa destra di un sistema di altoparlanti per PC. Quando la cassa sinistra (collegata tramite un jack) è scollegata, l'audio viene automaticamente mixato sull'unica cassa rimasta.



Schema elettrico




Il circuito



Le dimensioni del circuito sono prestabilite dato che è stato utilizzato il case di un altoparlante già esistente. Il tutto è stato costruito su delle basette 1000fori e collegato tramite filo wire wrap. Nella foto potete vedere come sono stati collegati i circuiti e posizionate le batterie.

Software

Gestione delle tracce


Figure 3


Le tracce audio possono essere salvate in cartelle (massimo 50) e ogni cartella può contenere al massimo 99 file (.mp3 files).

Il FAT file system utilizzato in questo progetto non supporta nomi di file troppo lunghi (solamente il formato 8.3).



Controllo della riproduzione

Dopo l'accensione il microcontrollore verifica le cartelle e i file presenti. Se la memoria non è stata cambiata, la riproduzione riprende dall'ultimo file riprodotto.

La trasmissione dei dati al DSP avviente con la funzione f_forward . Questa è simile alla funzione f_read con la differneza che i dati vengono girati direttamente al DSP senza essere memorizzati.


Motion Detection
Questa è la funzione più importante di questo lettore MP3. La gestione dell'accelerometro è affidata ad un interrupt. Ogni uscita dell'accelerometro è campionata con una frequenza di 2000 Hz e viene così verificato ogni spostamento. In questo progetto 6 differenti movimenti sono discriminati e inviati alla Main routine per eseguire comandi come NEXT, PREV or PAUSE.

Come funziona

Quando l'SD è inserita il circuito riceve alimentazione, quando viene tolta il tutto si spenge. I comandi al lettore vengono impartiti nel seguente modo:

Traccia successiva
Battendo l'angolo in basso a destra sul tavolo
Album successivo
Battendo due volte (entro 400 msec) l'angolo in basso a destra.
Traccia precedente
Battendo l'angolo in basso a sinistra sul tavolo
Previous Album
Battendo due volte (entro 400 msec) l'angolo in basso a sinistra.
Pausa
Appoggiando la parte frontale sul tavolo.
Aumentare il Volume
Inclinando il lettore a destra.
Diminuire il Volume
Inclinando il lettore a sinistra.
Loop Mode
Battendo il lettore sul tavolo mentre è in pausa vine inserita la ripetizione di tutti i brani, battendo due volte vien attivata la riproduzione dell'album. Quando il comando è riconosciuto il led verde lampeggia due volte.

I led
Verde acceso fisso: in riproduzione.
Verde lampeggiante: pausa. Se lampeggia durante la riproduzione significa che la batteria è scarica.
Rosso acceso fisso: in ricarica





Se ti è piaciuto l'articolo, iscriviti al feed per tenerti sempre aggiornato sui nuovi contenuti del blog! Se invece vorresti vedere pubblicato un articolo in particolare mandami una richiesta








Articoli correlati

0 commenti:

Posta un commento