
Fai da te: MP3. Questo progetto è per hobbisti o per esperimenti ma anche per quelli che vogliono modificare i loro computer e non sono soddisfatti delle loro schede audio integrate.
Progettato per desktop o laptop come un plug-in IDE, questo MP3 fai da te potrebbe lavorare anche indipendentemente aggiungendo solo una fonte di alimentazione esterna, un hard disk ed una memoria SIMM. Questa unità può essere usata su un veicolo a casa o in movimento. Può riprodurre i file MP3 per un tempo quasi illimitato. Il suo audio è ottenuto con un DAC a 24 bit con una linea di uscita standard o l'uscita per cuffie. Con la sua alta capacità, puoi portare con te la tua intera collezione dovunque vuoi con una qualità audio molto alta.
Il circuito stampato è saldato separatamente con differenti aggiunte sugli oggetti a)assemblato completamente e testato, necessita solo di alimentazione, hard disk e memoria SIMM, b) con un display LCD 24 caratteri per 8 righe e un adattatore con 12 pulsanti con caratteristiche aggiuntive, c) kit completi o parziali che dovrai assemblare o saldare d) cavi corti IDE per laptop e 72 Pin SIMM che non sono facili da trovare in un normale negozio di computer, ed e) alimentazioni singole che puoi scegliere in base al sistema che preferisci.
Source: Un MP3 super-semplice e tascabile
Re-post del: 17-03-2009

Bellissimo progetto, non tanto adatto da mettere al posto della sound blaster, ma molto interessante. La parte bella è che puoi andare in giro con un MP3 fatto con le tue mani, e immaggino la gente quando dici che lo hai costruito tu. Il fatto che non mi torna, comunque é che oltre al circuito bisogna aggiungere, hardware drive, memoria e alimentazione, cosa che non é poco voluminosa non credete?!
Credo che le schede normali siano a 16 bit ma non vorrei sbagliare..24 bit per quelle un pò più dedicate. =)
Un articolo interessante degli aspetti della sua realizzazione ,
in primo luogo un unico un microcontrollori della marca microchip ossia PIC 16F877 sicuramente uno dei più apprezzati nell’ambiente hobbystico ,
In questo progetto viene affrontato il tema della forma di MP3 che rimane interessante per studiare i metodi sia di archiviazione in tale file sia i metodi di scompressione per riottenere un segnale PCM così da poterlo riprodurlo attraverso un DAC ,
Chiaramente ci sono alcuni sbagli quando si parla di memoria SIMM e dei loro supporto sicuramente si riferiva al formato CF , per cosa riguarda del display nel progetto e sono previsti due team aggiuntivi che non sono stati ancora sviluppati ,
Citazione articolo :
” Progettato per desktop o laptop come un plug-in IDE ”
Sicuramente l’autore voleva intendere che questo progetto può essere usato su qualsiasi disco fisso per desktop o laptop che usa come sistema di collegamento l’ IDE che viene utilizzato anche dalle schede di memoria CF .
Per cosa riguarda quando parla di un tempo quasi illimitato di riproduzione io direi dal fatto che si possono collegare dischi di anche di grande capacità visto che filesystem viene utilizzata è il FAT 32 e che tale sistema può gestire un volume che va fino ad un limite teorico di archiviazione fino a 2 To .
O non riesco a capire io, o l’articolo ha qualcosa che non quadra… se quello è un Lettore mp3 non è una scheda audio. Poi leggendo l’articolo originale vedo che è stato ideato per funzionare con memorie compact flash, non è assolutamente quello che dice il sottotitolo dell’articolo!
e poi che significa “Può riprodurre i file MP3 per un tempo quasi illimitato”? il tempo è ben limitato dalla memoria usata che è una compact flash o microdrive, non un hard disk! Inoltre leggendo sul sito originale c’è scritto che non supporta nemmeno la lettura di dati organizzati in cartelle. vuol dire che è stata implementata una versione abbastanza ridotta del filesystem. L’ordine di riproduzione è semplicemente l’ordine di scrittura sulla memoria, e non c’è nemmeno il display! il sito lo dice espressamente “There’s no display or any fancy stuff”
E poi la storia della memoria simm? Mica è un computer quel coso! Mi piacerebbe sapere perchè è stato scritto questo articolo
Concordo appieno con tutto ciò che hai detto. Questo articolo è totalmente forviante rispetto a ciò che è riportato sull’articolo originale scritto in inglese. Nell’articolo ogriginale non si parla di hard disk, di memoria simm, di display…si tratta semplicemnte di un riproduttore sequenziale di tracce MP3 contenute in una memoria compact flash…tutto qua. Nonostante la pessima interpretazione/traduzione, l’articolo in se (intento quello in lingua anglosassone) mostra diversi aspetti interessanti come, ad esempio, la gestione di una memoria compact flash e l’estrazione da queste delle tracce MP3, il tutto eseguito da un PIC a 8 bit di fascia media…Può essere un’idea per intgrare sistemi automatici o scenari ambientali riprodotti con combinazioni di luci colorate che in corrispondenza di un determinato transitorio di accensione delle lampade parte un sottofondo musicale generato appunto dal circuito dell’articolo. E’ un’idea questa certamente con un fondamento pratico, visto che mi è capitato che mi venisse commissionata una centralina per giochi di luci sincronizzata ad un lettore MP3 per generare scenari naturalistici in un pub…
interessante progetto…tra l’altro mi è dato da capire che per la gestione utilizza un micro microchip, quindi non potrei chiedere altro…
bellino, avete dato un occhiata al progetto ?? nel link c’è tutto 🙂 è fatto con un PIC e il programma a quanto ho capito è scritto in C..
non mi torna una cosa… ma quale sarebbe il vantaggio di metterla al posto della scheda audio del PC? non son tutte a 24 bit? il bello sarebbe andare in giro con il lettore mp3 fatto da te 🙂 .. mi piacerebbe un registratore invece
davvero molto interessante questo progetto ideale per auto 🙂
è scritto in C, il circuito è doppia faccia, non proprio facile da realizzare, è comunque interessante e degno di nota per la realizzazione a livello hobbystico, nè cercavo uno quando uscirono i primi lettori MP3, per utilizzare le SD che mi trovavo in possesso, anche perchè all’epoca, già quelle da 256 costavano parecchio, oggi che in pratica costano poco anzì pochissimo, non nè vedo la diffusione in campo hobbystico.
Ormai molte autovetture hanno integrata il lettore usb, spesso nascosto, dove puoi visualizzare nel cruscotto i titoli dei brani.
L’alimentazione elettrica è essenziale per qualsiasi circuito , non ne puoi fare a meno e questo è sempre stato un rompicapo per ingegneri ,
visto chele batterie degli alimentatori non si possono miniaturizzare
Per quanto riguarda la decompressione del file MP3, non è il PIC ad eseguirlo…leggendo con attenzione l’articolo in inglese si evince come la decodifica MP3 e la conversione DAC a 24bit sia demandata al medesimo circuito integrato che è totalmente esterno al microcontrollore…purtroppo non ho ancora visto in giro pregetti che utilizzano una decodifica MP3 completamente programmata su microcontrollore, anche se penso che con PIC ad esempio di fascia alta come la famiglia 18F o meglio ancora PIC24H a 16bit e a 40MIPS, qualcosa si dovrebbe già riuscire a fare…aldilà di questo, il micro controlla il flusso di dati dalla memoria al decoder MP3, quindi ciò che resta altamente costruttivo è l’analisi del codice C implementato per la gestione di una compact flash memory e tutti i controlli che si fanno sullo stream dati di tipo MP3…
Tieni conto che si tratta comunque di un progetto realizzabile a livello hobbistico e ben lontano dai lettori MP3 o MP4 che teniamo nel palmo della mano e che integrano un sacco di tante altre funzioni che questo progetto non mette a disposizione, come la gesione di un display grafico a colori (ormai i lettori mp3, anche economici, ai quali siamo abituati noi hanno un minimo di display grafico), equalizzatore a bande, ecc… e si alimenta con una batteria stilo da 1.5V…anzi, ringrazia che si siano cimentati nella progettazione di un piccolo stadio DC/DC step-up che da in uscita una tensione suppongo di 5V a partire da una tensione d’ingresso di 1.5V, altrimenti ti toccava alimetare il tutto con almeno 4 mini stilo e l’ingombro sarebbe aumentato considerevolmente…
Una delle migliorie apportabili che gioverebbe in termini di ingombro potrebbe riguardare la sostituzione della memoria Compact flash con una microSD da n GB, anche se dubito che il PIC16F877 sia in grado di gestirla…andrebbe sostituito anche il micro con un suo fratello maggiore ma pin-compatibile come il PIC18F4550 (12Mips e in versione extra low power per garantire una maggiore durata delle batterie…)
Ti posso dire che con un PIC 16F84 si può gestire tranquillamente una SD anche essendo un microcontrollori di fascia molto più bassa ,
E ho anche realizzato un progetto in questo senso .
Un sensori di temperatura che veniva letto e poi scriveva tutti i secondi il valore in un file text che si trovava in un SD ,
ti lascio questo sito come riferimento :
http://www.cc5x.de/MMC/index.html
Grazie mille per la segnalazione…in effetti, se non erro, le schede SD comunicano con il protocollo SPI, dico bene? comunque prima di visionare il tuo commento pensavo seriamente che non si potesse gestire una memoria di questo tipo tramite PIC di fascia bassa…se addirittura mi stai dicendo e dimostrando che con un PIC16F84 questa operazione è fattibilissima, allora non ci sono limiti alcuni nella gestione di questi supporti di memorizzazione…buono a sapersi! Sinceramente i progetti che ho sempre visto in rete e che gestivano memorie SD portavano a bordo PIC almeno della serie 18F
La necessità rende ingegnosi ,
era l’epoca che frequentavo le scuole superiori , in laboratorio avevamo solo disposizioni PIC 16F84 e dovevi fare tutto con quelli .
Una delle vere sfide ingegneristiche e di usare dispositivi di fascia molto bassa e fargli fare delle operazioni molto complessi così per utilizzare il 99 % delle risorse a disposizione , in questi casi puoi usare anche il 100% della memoria di programma messo a disposizione del microcontrollori ,
E tutte le variabili che sono disponibili .
È molto facile usare un dispositivo al 10% dei prestazioni sue ma rimane una vera sfida portare al limite delle prestazioni senza oltrepassarla di qualsiasi dispositivo .
Sono ampiamente d’accordo con te! Il lavoro dell’ingegnere non è semplice proprio perchè deve partire dal presupposto che le risorse che ha a disposizione sono limitate al punto di dover utilizzare tutti i possibili stratagemmi e oserei dire “mc-gyverismi” per portare avanti il progetto spremendo il più possibile le risorse a disposizione. Si parla di ottimizzazione dell’utilizzo di risorse. A livello aziendale non ti viene chieso altro, proprio perchè non ti danno il PIC da 3$, ma quello che costa mezzo $ e devi fare tutto con quello senza pretendere di volere dell’altro!
Riuscire a fare l’impensambile con un PIC16F84 da le sue soddisfazioni…complimenti per il progetto! 😉
Meglio il link che l’articolo in questo caso, comunque la realizzazione è interessante, il pic usato è abbastanza comune inoltre ci sono i pcb, puo’ essere realizzato ed è lo scopo di tutti gli hobbysti
il doppia faccia con un pò di accortezza non è un problema da realizzare, il “problema” principale sta nell’utilità di questo progetto, penso che il suo impiego principale sia in circuiti fatti in casa in cui si necessita di riprodurre file, ma nel pc e in esterno(macchina e no) i prodotti commerciali siano decisamente i più indicati!
Non vorrei fare il guastafeste ma il sopracitato circuito usa un decoder MP3 obsoleto della VLSI non piu’ prodotto dal almeno un paio di anni e gli altri componenti simili della stessa casa non sono fra l’altro facilmente reperebili ed altrettanto economici. Necessita pertanto un po’ di reingegnerizzazione
Questa circuito non serve a essere riprodotto tale e quale ma serve a capire il suo funzionamento per riprodurlo in altri circuiti dove ci ha in necessità di farlo .
vabbè ora lo dico.. è dall’altro giorno che ci pensavo, innanzi tutto un repost del 2009 , ma soprattutto, il progetto in questione mi pare, è datato 2001 – 2003 (almeno a quanto ho capito dal sito originale, non sono sicuro perchè il mio inglese è scarso) poi se andate a guardare ci sono altri progetti più recenti e carini di questo (sempre nello stesso sito) comunque è una cosa carina da fare secondo me… 🙂 loro vendono il kit …
Ma qual’e’ la sua illimitata capacita ??? 😉 Si afferma che potrei portarmi appresso la mia intera collezione di MP3 ma non si evince dall’articolo i GB disponibili.
L’articolo originale parla di 8G chiaramente uno puo’ metterci quello che vuole come CF, ma da li a dire che ha capacita’ illimitata ne passa 😉
Sicuramente un buon progetto che implica l’implementazione completa di sw di gestione del pic, creazione GUI su LCD e gestione eventi di I/O.
In limitate no me molto grande .
Questo circuito usa come filesytem il FAT 32 che a livello teorico può creare un’unità logica sino a 2 To in un solo blocco ,
Il circuito implementa come memoria una CF che usa come protocollo Sia fisico sia Software uguale a quello di un disco fisso di tipo IDE quindi puoi collegare al posto della scheda di memoria un disco fisso e funziona allo stesso modo .
da questo momento sai chi hai un disco fisso di 2 to pieno di musica in formato MP3 ,
considera che 2 To possono rappresentare come tempo musicale circa 12 anni di musica in continuo .
un pò di tempo fa l’ho fatto anche io un aggeggio così con l’arduino
http://www.facebook.com/photo.php?pid=30821363&l=4c812ddffd&id=1601960258
http://www.facebook.com/photo.php?pid=30821361&l=be4c61ce71&id=1601960258
per farlo ho preso mezza graffetta (alla mac guyver) e per i contatti ho piegato dei piedini…
Per adattare le tensioni (che per le sd/mmc non possono essere superiori a 3,5V) ho usato dei partitori resistivi… è quasi un caso fortunato che ha funzionato qualche volta… il problema principale è che i piedini non facevano bene contatto con la scheda… Io avevo usato fat12 senza nemmeno il supporto per le cartelle, per delle semplici misurazioni non ce n’era bisogno. Volevo comprare un supporto migliore per la scheda, ma in città non ho negozi di elettronica e sono troppo pigro 😀
ricordo che da qualche parte avevo visto un lettore mp3 che utilizzava solo un microcontrollore. allora mi sono messo a cercare e mi sono imbattuto in questo.
http://hackaday.com/2010/12/13/mp3-player-barely-larger-than-an-sd-card/
non è quello che cercavo, ma fa la sua figura!!!
Legge file Mp3 memorizzati su scheda SD, usa un pic16lf88 e un integrato della vlsi che credo sia ancora in commercio. la pagina originale è questa
http://www.elxproject.com/elx/news.php?readmore=75
la cosa che “sconvolge” è che è estremamente piccolo! Solo che nel sito la figura del layout del pcb non coincide con la foto. a quanto pare è un adattamento che lo rende ancora più piccolo, grande giusto quanto basta per coprire la scheda SD
Ci sono dei progetti di lettori mp3 fatti solo con un microcontrollore. ne stavo cercando poco fa qualcuno, ma non l’ho trovato per ora. se mi capita per le mani lo posto.
comunque il limite più grande di questa cosa è che bisogna trovare un mcu che abbia anche un DAC decente… altrimenti dobbiamo accontentarci del segnale in pwm che con tutto il rispetto non si può proprio sentire XD
Non tanto più indicati quanto più economici se ci sommi il costo dei componenti (basta lo zoccolo per il microcontrollore che ti viene a costare più dell’IC stesso), il lavoro che ci devi mettere per realizzare la PCB a doppia faccia (e per quanto sia farribile, non è un lavoro agevole) e il fatto che tutto sommato il circuito fonda le sue radici su componenti oggi com oggi forse un pò obsoleti (come la compact flash memory…si pteva pensare ad una realizzazione basata su SD)…I prodotti commerciali li puoi trovare di più economici e versatili…poi se è una questione di soddisfazione nel poter dire “Ti piace? l’ho costruito io!!”, allora lì la questione cambia notevolmente!! 😉
Se ti devo essere sincero mi sono messo a cercare pure io con il tentativo di rintracciare un lettore mp3 singolo MCU, ma niente da fare. Ho la strana sensazione che decodificare uno stream mp3 non sia affatto qualcosa di semplice, e non basterebbe di certo un ottimo DAC a ridurne la complessità. Tutti gli schemi che sono riuscito a reperire adottano un decoder MP3 dedicato…
Se proprio vuoi progettare un dispositivo che scodifica il flusso dei dati MP3 direttamente in un solo circuito integrato , devi cambiare fascia e tecnologia dimenticato , La più adatta questa funzione sarebbero FPGA che già in impiantano delle librerie in VHDL per la codifica e scodifica mpeg 4 quindi non ci dovrebbero essere problemi per delle MP3 esistono anche FPGA dove stato integrato anche un convertitore digitale analogico ,
Qualsiasi microcontrollori del mercato non avrà mai la potenza di calcolo di scodifica il flusso di dati MP3 e lo dovrà sempre dedicare a una terza parte come una DAC
Addirittura arrivare passare di utilizzare architetture così complesse come l’FPGA (attenzione, per complesso intendo la struttura architetturale, non il flusso di progettazione in se) per realizzare un lettore MP3?? Io credo che nessuno si sia mai messo seriamente a scrivere il firmware, perchè non credo che sia possibile che con architetture a 32bit microcontrollori attuali non si riesca a finalizzare un compito magari così relativamente semplice per strutture del genere!! Io penso che ci sia solo da ricercare, niente di più di questo…o magari, mettendo insieme più teste esperte, si potrebbe studiare l’algoritmo di decodifica MP3 e cercare di creare noi un progetto adoperante un singolo micro…fatto sta che il tempo, purtroppo, scarseggia, altrimenti sarebbe un’ottima idea di collaborazione per il progetto di un lettore MP3 totalmente Open Source…;)
se parliamo di fpga però stiamo su un altro livello… Oltre al codec bisogna scriverci sopra anche il processore, e potrebbe diventare una bella fatica … Secondo me se qualcuno si mettesse a programmare un mcu a 8 o 16 bit in linguaggio assembly ci ciuscirebbe. Personalmente non credo che i pic siano la soluzione, dato che anche se si trovano modelli fino a 40MHz di frequenza, ma poi la frequenza di elaborazione delle istruzioni è un quarto. Ho invece appena scoperto che la atmel produce microcontrollori a 32bit fino a 800MHz! diciamo che sono delle belle creazioni! Invece per quanto riguarda gli 8bit il modello più veloce che ho trovato è a 60MHz. In ogni caso non sono sistemi lenti, secondo me l’unica difficoltà è la scrittura del codec in un linguaggio che è “poco umano”. il resto sono tutte cavolate… Il DAC più fesso si fa con 2 resistenze per bit!
Già…il difficile, come hai detto tu, sembra proprio scrivere il codice che deve essere veloce e ottimizzato, quindi possibilmente scritto in Assembly (lontano dall’uomo ma vicinissimo alla macchina). Poi con una manciata di pin a disposizione, un R-2R di convertitore Digitale/Analogico lo si realizza facilmente. Con i core a 32bit disponibili in commercio o con un MCU anche a 8bit (anche se conosco precisamente le specifiche del codec MP3) ma con buone caratteristiche in termini di MIPS, sicuramente si riuscirebbe ad inglobare all’interno di uno solo package tutto il necessario per realizzare la logica di controllo e decodifica per un lettore MP3. Bisogna solo sbatterci la testa su, e purtroppo più che la passione, questo è un lavoro che richiede tanto tempo a disposizione che purtroppo sia io e penso anche gli altri non abbiamo!!
In realtà le FPGA non sono componenti così inaccessibili occhi riservati ai professionali , il loro prezzo rimane abbastanza accessibile ne esistono e costano anche 5 – 6 euro , comunque a prezzo uguale una FPGA rimane sempre più performante che un microcontrollori .
uno dei problemi maggiori del MP3 è la richiesta in memoria ( RAM ) per eseguire l’algoritmo di scodifica è di solito i microcontrollori ne contengono poca ,
Dopo c’è il fatto che i microcontrollori sviluppano una potenza di calcolo abbastanza limitata .
E più non so fino a che punto questa operazione di scomporsi della MP3 direttamente con un solo microcontrollori abbia senso visto che esistono componenti a buon mercato che fanno questa operazione molto bene ,
davvero molto interessante come progetto… sarebbe bello portare in giro con sè un mp3 realizzato con le proprie mani e magari anche abbellito con un tocco di classe 😉
con tutto il rispetto, la tua ultima affermazione mi fa sorridere… Stiamo investendo giornate intere su questo sito facendo a gara a chi pubblica più commenti con o senza contenuto, e mi stai grossomodo 15mila parole avanti… Io cerco da fare del mio meglio, non sono molto abile nei discorsi tautologici, in genere bado all’essenziale.
Sarebbe stato molto meglio secondo me un concorso che preveda oltre che il mero nozionismo anche la bravura dei partecipanti. Di sicuro hai notato che a questo concorso stanno partecipando persone che mancano persino dei rudimenti di elettronica. Che dovrebbero farsene dei premi? Gli unici premi adatti a principianti sono il multimetro e l’arduino.
La realizzazione di un codec mp3 per mcu sarebbe stato proprio una bella sfida! 🙂
ti quoto al 100% ,
In realtàhai ragione per persone come noi che fanno l’ elettronica come hobby e non a livello professionale alcuni regali ad esempio come La stampa di un PCB non risulta essere utile , perfino per me un oscilloscopio sarebbe un regalo che lascerei lì senza usarlo ,
a differenza del multimetro che quello avrebbe un’utilità per tutti quelli che fanno l’elettronica come hobbysta come me .
ahaha dai, allora se io vinco il multimetro e tu l’oscilloscopio facciamo a scambio 😛
Sicuramente quanto è stato prodotto sapendo benissimo che la memoria usata compact flash usando la pettinatura IDE è parzialmente compatibile con qualsiasi disco collo stesso tipo di collettore .