Hi every one,
last week I built successfully LibMAD based MP3 player with PIC32 MIPS core. I'm using Explorer 16 development board, AV16/32 PICTailPlus card, RealICE and Microchip MPLAB C32 compiler version 1.10(b), Microchip FAT16/32 library. Output audio has 10-bit resolution and it is synthesized from OCx modules using DMA or non DMA transfer. Processor is PIC32MX595F512L, sysclk=80MHz, pbclk=80MHz. I'm using TMR45 to measure CPUload, at 320kbps stereo stream depend of song CPUload is between 39% and 60%. Code is 'gamma' version, there is a lot of works to reach 'beta' phase. It is under GNU GPL license. Code can be optimized to fit in 32kb RAM, because now spend 49.5kb RAM
Project was born after I read Lucio Di Jasio's book Programming 32-bit Microcontrollers in C
. I bought his AV16/32 board and started with experiments. First micro was PIC32MX460F512L but unfortunately it has only 32kb RAM and LibMAD doesn't fit in this RAM. A weeks after that Microchip start sales of MA320003 board with PIC32MX795F512L on it, I bought one and I ran successfully LibMAD MP3 decoder.
Please, don't ask me how works LibMAD, answer is simple: I don't know . For more info about LibMAD please visit http://www.underbit.com/products/mad/
That's it, enjoy : Mp3Pic32