嵌入式GPS语音导航系统中MP3的解码与播放
整个音频系统的硬件设计主要是S3C2410的IIS总线接口和CODEC的连接与实现。其具体电路如图4所示。本系统采用Philips基于IIS音频总线的UDA1341型音频CODEC芯片。该CODEC支持ⅡS总线数据格式,并采用位元流转换技术进行信号处理,具有可编程增益放大器(PGA)和数字自动增益控制器(AGC)。
S3C2410内置IIS总线接口,可直接外接8/16比特的立体声CODEC,还可以给FIFO通道提供DMA传输模式而非中断模式,从而使数据发送和接收同时进行。该IIS接口有3种工作方式,可以通过设置IIS的CON寄存器来选择。本文介绍的硬件框架主要基于传输和接收模式。在这种模式下,IIS 数据线将通过双通道DMA同时接收和发送音频数据,其DMA服务请求可由FIFO只读寄存器自动完成。
图4中,S3C2410的IIS总线信号与UDA1341的IIS信号直接相连,L3接口引脚L3MODE、L3CLOCK和L3DATA分别连接到 S3-C2410的GP-B1、GPB2和GPB3三个通用数据输出引脚。U-DA1341对外可提供两组音频信号输入接口,每组包括左右2个声道。
3 软件设计
3.1 系统平台的选择
目前主流的嵌入式平台主要有嵌入式Linux和Windows CE两大系列。
Linux是一个类似于Unix的操作系统。它起源于芬兰一个名为Linus Torvalds的业余爱好者,但是现在已经是最为流行的一款开放源代码的免费操作系统。Linux从1991年问世到现在,已发展成为一个功能强大、设计完善的操作系统。伴随着网络技术进步而发展起来的Linux OS已成为Mi-crosoft公司Windows系统的强劲对手。Linux系统不仅能够运行于PC平台,还可在嵌入式系统方面大放光芒,很多嵌入式平台都用Linux作为其操作系统。
Windows CE是微软开发的一个开放的、可升级的32位嵌入式实时操作系统。其中CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力 (Connectivity)和伴侣(Companion);E则代表电子产品(Electronics)。不同于面向桌面的Windows,微软重写了 Windows CE的内核,这使得WindowsCE拥有优越的实时性能。Windows CE中的API是一个缩减的WIN32 API,它是桌面Windows系统的一个子集。这使得许多基于微软桌面Windows开发的应用程序可以经过少许的改动就能用于Windows CE中。同时,在Windows CE系统平台上,也可以使用桌面Windows上的编程工具语言(如VB、VC++等),并使用同样的函数和同样的界面风格.因此,其开发工作比较容易上手。考虑到大部分用户多年来使用Windows系列操作系统的习惯.Windows CE的界面风格比较容易让用户接受。
综上所述.本文选择Windows CE作为系统的开发平台,开发工具选择VS系列的EVC。
3.2 软件流程
图5所示是MP3解码的软件流程图。首先将MP3文件数据读人缓存,寻找文件中的ID3信息(ID3信息指MP3文件中可选的一种内嵌信息,用于表示 MP3的音频类型、作者等,目前分ID3vl和I。D3v2两个版本),接着在文件中寻找帧同步头,找到后即进入帧解码子程序,其帧解码的具体流程如图6 所示,解码完成后,再将解码出的PCM数据放入音频缓冲进行播放 ,如此循环直到最后一帧。
按键编码电路采用二极管组合逻辑开关阵列来实现对受控电路开关进行编址,其中指令编码电路采用编译码芯片组PT2262。PT2262的A口是地址码设置口,D口是数据码设置端,分别和二极管组合逻辑开关阵列的逻辑输出相连,数据从000~101有6种状态。发射模块电路中采用的射频芯片为 MICRF1020当编码芯片PT2262的数据输出端无信号输出时,MICRF102不工作,发射电流为零,而当PT2262的控制端有效时,输出的串行脉冲信号对MICRF102进行调制发射,通过调制电阻R2可调整发射电流,从而调整发射距离,较小的R2取值可提高发射距离,而增加二极管开关阵列则可将系统扩展成为多路遥控发射模块。
3.3 接收控制电路
接收控制系统主要由无线电接收电路、解码电路、单片机电路、开关电路组成。接收控制系统的电路原理图如图6所示。接收控制系统主要完成的功能是对接收进来的信号进行解调和解码,并将解码后的数据送单片机,由单片机根据此数据去控制相应的开关进行动作。
4 结束语
本文提出了一种在嵌入式GPS语音导航系统中实现MP3音频播放的实现方案,给出了解码步骤,并利用S3C2410核心与Windows CE平台完成了这一方案。经过实际产品验证,该解码器播放效果良好。各项指标均可满足要求。 (编辑:吕勇)
- 视频MP3音/视频设计的新需求 (03-09)
- 手机TFT显示驱动的解决方法和应用方法 (04-21)
- 基于MCU和音频解码器设计磁带式MP3播放器 (06-20)
- 基于AT90S2313-4PC的MP3无线遥控自动点播机 (上)(07-24)
- 基于AT90S2313-4PC的MP3无线遥控自动点播机(下)(07-24)
- 基于CH375的U盘MP3播放器设计(02-05)