新闻中心

EEPW首页>模拟技术>设计应用> 一种基于EFSL的嵌入式MP3播放器设计方法

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

作者: 时间:2012-11-02 来源:网络 收藏
DING-BOTTOM: 0px; MARGIN: 20px 0px 0px; WORD-SPACING: 0px; FONT: 14px/25px 宋体, arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; PADDING-TOP: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(255,255,255); orphans: 2; widows: 2; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">  2 软件设计

  播放器采用四层结构来实现其功能。软件层次结构如图2所示。采用模块化的主要目的是方便实现模块移植性。

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

  图2 播放软件层次结构

2.1 开发环境搭建

  开发环境主要是建立在The Rowley Cross StudioIDE基础上进行编译。CrossWorks for ARM1.6 使用GCC 4.1 编译器。安装CrossWorks forARM 1.6软件并导入MP3Player.hzp项目文件。项目文件中已经包含了主板中的文件和设备配置文件。

  Rowley Cross Studio IDE自动加载所有文件后,将显示所有主要文件夹:Audio Render Driver文件夹(包含了DAC音频处理相关代码)、Demo Player文件夹(主要模块,可根据需求对其进行配置和修改)、文件夹(保存了文件系统,通过此文件系统可以用播放器软件对MMC存储卡中的MP3文件进行读写操作)、EFSL Driver文件夹(保存存储设备基本读写操作驱动程序)、Libmad文件夹(主要编码文件,可根据需求改变相关代码以满足Libmad配置要求)。

 2.2 文件系统配置与编译功能模块

  文件系统配置与编译功能模块进行软件配置和文件系统编译。

  2.2.1 设置项目文件路径

  通过命令行工具,找到项目文件和包含文件。其路径为:

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

  在ARM Flash Release和ARM Flash调试选项窗口的预处理选项卡配置文件中添加MP3Player项目。

  2.2.2 配置编译器

  由于定点数字计算量要求非常高,而且扩展的数字指令集只能在32位上运行,所以代码编译也需要32位环境下进行编译,同时需要使用到USB存储器RAM 及其堆栈分配[5].USB RAM 一般情况下不运行在LPC214X环境下,但Rowley Cross Studio IDE已经提供了此硬件设备的初始化。Philips_LPC2148_startup.s创建并放置在项目目录,以支持USB RAM设备,还需要在代码中加入堆栈分配代码到USB DMARAM 的内存部分。

  2.2.3 Libmad文件配置

  Libmad可以在不同的平台上运行一个库,并为ARM7提供更好的优化。其编译器同样需要设置系统运行环境变量。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


关键词:EFSL嵌入式MP3播放器

评论


相关推荐

技术专区

关闭