单芯片MP3播放器之LPC2148版

MP3播放器已经满天下泛滥了,也到处看到电子爱好者在自制mp3,不管是国内,还是国外,都大有人在,已经没有什么可以刺激我神经的新鲜感了。今天收录的这一款唯一能够让我兴奋的是它基于NXP的LPC2148实现的,这是以往没见过的,另外这是一个单芯片的解决方案,也就是说只需要使用一片LPC2148就可以实现MP3解码,并使用片内的D/A转换器作为信号输出,驱动喇叭播放音乐。

整个系统移植和集成了两大开源代码MAD : MEPEG Audio DecoderEFSL : Embedded Filesystems Library

关于MAD

MAD是一个开源的高精度 MPEG 音频解码库,支持 MPEG-1(Layer I, Layer II 和 LayerIII(也就是 MP3)。MAD 提供 24-bit 的 PCM 输出,所有的运算都是都是定点计算,适合没有浮点支持的平台上使用。

关于EFSL

EFSL使用ANSI C编写,跟平台的大小端模式和字节对齐方式无关,支持fat12/16/32,可以同时支持多设备及多文件操作。每个设备的驱动程序,只需要提供扇区写和扇区读两个函数即可。RAM最小可以达到1.5K,当然通过提供更多的ram作为文件系统缓存,提高性能,非常适合资源有限的嵌入式系统使用。

需要说明的地方

LPC2148只有一个内置的10位DAC转换器,没有重建模拟输出的滤波器。DAC未加任何处理,直接用作渲染音频输出的设备,也就是说音频输出的采样频率只有10位,这一点是由DAC的采样频率决定的。这样,系统输出的音质不会很高,而且只支持单声道,因为LPC2148只有一个DAC。但是通常的MP3都是立体声格式的,这样你就需要将它先转换成单声道格式,然后再拷贝到SD卡(SD卡的文件系统必须是FAT32或FAT16)。

参考链接:说明文档实现代码

Copyright © 2008

继续阅读《单芯片MP3播放器之LPC2148版》的全文内容...

分类: 奇趣创意 | Tags: MP3  ARM   | 添加评论(0)

相关文章:

posted on 2008-03-18 08:37  xlander  阅读(346)  评论(0编辑  收藏  举报

导航