微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于EFSL的嵌入式MP3播放器设计方法

基于EFSL的嵌入式MP3播放器设计方法

时间:07-06 来源:互联网 点击:

大校

2.2.5 配置系统文件

由于文件初始化需要良好的LPC2148运行环境,需要把LPC2148提高到最大性能(60Hz),同时需要开启PLL功能,设置IRQ 中断管理定时器为0和VPB分频器为1.同时Philips_LPC2148_Startup.s必须包括相关预处理编译指令。要在IDE中设置编译器指 令,只需要在项目浏览器窗口选择Philips_LPC2148_Startup.s的文件,然后选择预处理选项卡,并填写预处理器定义此属性。

2.2.6 编译批处理文件

要进行编译批处理文件,需要具备两个文件,一个是项目文件MP3Player,一个是针对ARM 的RowleyCross Studio文件Rowley Associates Limited.Cross-Works for ARM 1.6文件中有可以自行批处理文件:

build_all_debug.bat,build_all_release.bat.

3 系统流程

系统启动后,先初始化硬件模块。由LPC2148读取SD卡的一些基本信息,如容量、扇区大小、FAT表及根目录所在的启始扇区等。通过获得这些信 息后,就可以找出SD卡是否有可以播放的音乐文件。若有音乐文件,微处理器将通过SPI总线方式读出该文件的音频信息,并将歌曲的码流信息送入到 VS1003芯片中,通过VS1003芯片解码以及其内含的高质量的立体DAC和耳机驱动电路,实现MP3歌曲的播放功能,软件系统流程图如图3所示。

图3 软件系统流程图

4 调 试

Main.c文件(源代码略)显示MP3播放器的工作过程。init_IO()函数LPC2148定时器0进行初始化,使之产生周期性的中断,并启 动了一些数据结构。周期性中断速率要与解码器数据流一样,然后由efs_init(efs,″″)进行MP3文件调用,若找不到文件则会通过 JTAG interface 接口向CrossStudio IDE 传入Could not open filesystem参数,否则正常显示文件信息。其文件处理结果显示如图4所示。通过调试显示信息可知能正常显示文件信息。另经过实物制作并测试,此 MP3播放器能流畅播放SD 卡中的MP3文件,验证了本设计是正确可行的。

图4 调试终端显示信息

5 结语

本文基于开源软件项目EFSL设计了一款MP3播放器,介绍了播放器系统的硬件架构和软件架构以及EFSL相关码源移植和修改。通过CrossWorks forARM 1.6软件调试,验证了设计的可行性。整个设计体现了EFSL码源移植简单、配置方便的优点。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top