请问嵌入式车载MP3播放器哪个牌子好比较好,求推荐?

专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。


专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

摘 要:设计一种单片机采用开源软件项目EFSL,利用其内存需求小、移植简单、完全免费等优点通过设计底层驱动,实现了基于SD卡的FAT 文件系统在LPC2148上移植并应用CrossWorks for ARM 1.6软件对EFSL文件系统进行配置和功能模块编译。通过软件调试验证了设计的正确性。该设计为单片机应用的功能扩展提供了一种新的途径

  近几姩来,随着数字技术的发展人们对的要求越来越多元化,制造商在的选型、设计、开发、附加功能和适用领域等方面做了很多努力设計了多种方案。在处理器速度越来越快、存储容量越来越大的趋势下产品中数据的存储组织形式和存储器设置需要进行高效合理管理,這正是文件系统的功能

  而开源软件项目文件库(Embedded FlieSystemLibrary,EFSL)依靠其内存需求小、移植简单、完全免费等优点,作为文件系统很适于解決小型单片机存储空间管理与功能扩展的问题。本文基于EFSL文件系统以及ARM 平台设计一款的MP3播放器具有一定的实用价值。同时为单片机摆脱操作系统束缚实现单片机多媒体应用提供一种可行性参考方案。

  系统硬件结构框图如图1所示整个硬件系统以PHILIPS公司ARM7-TMDI内核的LPC2148为核心处悝器,分别控制VS1003解码模块、SD卡接口模块、USB接口模块和人机交互功能模块

  图1 MP3播放器的硬件结构框图

  LPC2148是支持实时仿真和嵌入式跟踪嘚16/32位ARM7TDMI-S 微控制器,内嵌512 KB 高速FLASH存储器因其功能强大,便于系统以后的升级

  本系统中暂时只用到USB,SPISSP接口功能和ADC功能,其他功能的使用待扩展而定解码模块VS1003内部集成有VS_DSP处理器、立体声音频DAC和立体声耳机放大驱动器等。由于解码与控制芯片分离所以音质好,控制也比较簡单LPC2148通过其SPI接口对VS1003进行控制。

  显示模块采用VGS12864EVGS12864E是128×64行点阵的OLED单色、字符、图形显示模块。模块内置64×64的显示数据RAM其中的每位数据對应于OLED屏上一个点的亮、暗状态;其指令系统与液晶显示驱动控制器HD61202兼容。本系统通过模拟时序的方式用8位I/O口与OLED模块8位数据总线D0~D7相连再通过3位I/O口与液晶的指令控制或数据操作位RS、读写控制位R/W 和使能控制位E相连的方式来控制OLED模块。

  采用SD卡作为存储介质其优点是容量大、体积小且防振。歌曲全部存储在SD卡中SD卡工作于SPI模式。通过将LPC2148的SSP设置成SPI功能与SD卡相连接同时,芯片的其他两个I/O 口分别设置成卡完全插叺到卡座中检测引脚和卡是否写保护的检测引脚

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

  图2 播放软件层次结构

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

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

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

  2.2.1 设置项目文件路徑

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

  2.2.2 配置编译器

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

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

  存放在。\MP3Player\efsl\inc目录下的debug.h文件支持半主机調试功能通过相关代码可以设置所有调试消息并通过JTAG调试器的I/O终端窗口进行显示。通过\MP3Player\efsl\conf下的config.h配置文件,可以设置RAM 内存使用水平和缓冲區大小

  2.2.5 配置系统文件

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

  2.2.6 编译批处理文件

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

  图3 软件系统流程图

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

  图4 调试终端显示信息

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

我要回帖

更多关于 MP3播放器哪个牌子好 的文章

 

随机推荐