APP下载

基于DSP的触摸式MP3的设计

2010-03-15宾,杨

电子技术应用 2010年7期
关键词:扇区触摸屏解码

王 宾,杨 岸

(安徽理工大学 电气与信息工程学院,安徽 淮南232001)

TMS320LF2407A是美国TI公司推出的高性能16 bit定点数字信号处理器,它采用了高性能静态CMOS技术,使得供电电压降为3.3 V,减小了控制器的功耗;40 MIPS的执行速度使指令周期缩短到25 ns(40 MHz),从而提高了控制器的实时控制能力。它专门为数字控制设计,集DSP的高速信号处理能力及适用于控制的优化外围电路于一体,在数字控制系统中得以广泛应用;MP3是指MPEG国际标准音频第三层编/解码[1],本文采用硬件解码方式(软件解码代价高,速度慢),利用TMS320LF2407A实现MP3播放器的设计。

1 系统硬件组成

1.1 微控制器TMS320LF2407A

系统硬件结构如图1所示,TMS320LF2407A作为主控芯片,内部资源十分丰富,具有40个可编程/复用的GPIO脚,具有事件管理器EV模块、CAN总线模块、SCI模块以SPI模块等。其中,同步串行SPI模块具有4个通信引脚:主出从入 SPIMOSI、主入从出 SPIMISO、同步时钟SPICLK、总线片选 SPISTE。本系统中,SD卡、VS1003B以及TM7843都是SPI总线接口设备,DSP采用 SPI总线扩展了SD卡与VS1003B音频解码芯片,而并未将触摸屏控制器TM7843也扩展到SPI总线上,采用了IO口模拟SPI的方案,原因是在对SD卡操作的同时(数据还未读入RAM),是不可能向VS1003B传送数据的,SPI处在间歇的切换状态中,不会导致争用、冲突,但是对屏幕的触碰是难免的,所以共用总线不可靠。

1.2 VS1003B解码芯片

VS1003B是由荷兰VLSI公司出品的一款单芯片的MP3/WMA/MIDI音频解码和ADPCM编码芯片,其拥有一个高性能低功耗的DSP处理器核VS_DSP,5 KB的指令RAM,0.5 KB的数据RAM,串行的控制和数据输入接口,4个通用IO口,一个UART口;同时片内带有一个可变采样率的ADC、一个立体声DAC以及音频耳机放大器。

如图2所示,VS1003B各部分的供电电压不同,AVDD(模拟电路电压)与 IOVDD(IO电压)须用3.3 V供电,CVDD(数字电路电压)必须用 2.5 V供电;VS1003与DSP连接的引脚主要有7个,分别为 DREQ、SO、SI、SCLK、只有保证它们与 DSP正确可靠的连接,才能对VS1003进行有效的操作与控制;操作时,只有当 DREQ为高(准备好)时才能读写 VS1003B,它具有2个读写端口,即命令端口和数据端口,分别由(命令片选)与(数据片选)决定,由 DSP的 IO口控制。SO、SI、SCLK是 SPI接口,与DSP的SPI总线对接。图2的左侧与右侧原理图分别为MIC音频模拟信号输入电路与音频输出电路,由于内部具有耳机驱动器,VS1003B输出信号不需经过任何功放电路,简化了硬件电路。

1.3 SD卡电路

SD卡有9个引脚,支持2种可选的通信协议:SD模式和SPI模式[2]。如前所述,本设计采用SPI模式。图 3中,DI、DO、SCLK分别对应微控器 SPI模块的3个引脚;CS脚是SD卡SPI模式的片选引脚,与DSP的IO口连接,DSP的 SPISTE脚并未使用(因为需要扩展多个 SPI芯片,需要多个片选脚),对 SD卡操作时,CS脚才拉低有效,避免了与VS1003B冲突。SENS与WP分别为SD卡的插入检测与写保护脚。

1.4 彩屏与触摸屏驱动电路

ILI9320是手机上常用的彩屏控制器,采用16 bit并行总线方式,端口被映射到DSP的IO空间,彩屏具有4个背光LED灯(控制端为LED1~LED4),采用三极管9012连接共阳极LEDA,使背光受控于DSP的PE3脚,若一段时间内未触摸屏幕,控制PE3脚为高,使背光熄灭,降低系统功耗。彩屏与4线电阻式触摸屏紧贴一起,2块屏是一个整体,输出软排线中的 XR、YD、XL、YU(参见图 4中的U3)即为4线电阻采样端,与TM7843(芯片U4)对应脚连接,TM7843的 DCLK、DIN、DOUT、/CS脚与TMS320LF2407A的IO脚连接,模拟SPI总线。是笔落下信号,程序中判断此脚为低电平时(或采用中断方式),则有触摸屏幕事件发生,再进一步做区域识别处理。

2 软件设计

软件主要分为3个任务:显示任务、触摸识别任务、MP3播放任务,由μC/OS操作系统负责调度。MP3播放任务完成了最主要的功能,即从SD卡FAT32文件系统中读取数据再送入VS1003B解码。然而μC/OS系统只是完成了基本的任务调度及相关机制,并无其他内嵌实用模块,所以基于SD卡的FAT32文件系统的实现必须设计完成。

FAT32文件系统如图5所示,物理扇区0可以引导程序定位到正确的文件系统逻辑扇区0的位置。引导区DBR的第一扇区包括一个引导程序和BPB参数块[3]。启动区BPB是文件系统最重要的部分,它记录了每扇区字节数、根目录簇号、FAT表号等重要信息,依据它可以找到每个文件的簇号,依据文件的链式存储结构,可以依次找到文件的所有存储簇号。

软件中设计了对应的结构体,描述了BPB块结构、目录结构、文件记录体结构等。其中,BPB结构如下:

再利用SD卡硬件层API接口函数FAT32_ReadSector将BPB所在扇区读入RAM缓冲区,利用指针指向内部成员即可获得以上信息,从而可以定位到文件位置并读取数据。MP3通常只是读取文件,并不会进行删除、保存等操作,所以为了提高效率、精简代码,本FAT32系统只实现了文件定位及读取功能。图6为主流程图与播放任务流程图。

TMS320LF2407A具有较高的性能,资源丰富,将其应用到MP3播放器中,提高了整体性能;采用触摸屏可以随意点选歌曲以及拖动播放进度等,使系统可控性提高;彩屏使系统展现能力提高,系统不仅可以播放音频,而且能够显示全彩BMP图片、文档文件等,类似于小型PDA。

[1]刘毅.基于 TMS320VC5509实现 MP3解码[J].电子技术应用,2006(11).

[2]聂虹.SPI模式下MMC卡的读写机制[J].单片机与嵌入式系统应用,2007(7).

[3]付秀泉.基于MSP430F1611和SD卡的心电数据存储系统的低功耗设计[J].电子技术应用,2009(4).

[4]李宏佳.基于ARM和SD卡的嵌入式文件系统研究与设计[J].电子设计应用,2007(7).

猜你喜欢

扇区触摸屏解码
《解码万吨站》
分阶段调整增加扇区通行能力策略
PLC和触摸屏在卫生间控制系统的应用
解码eUCP2.0
NAD C368解码/放大器一体机
Quad(国都)Vena解码/放大器一体机
浅析投射式多点触控电容触摸屏
皮肤“长”出触摸屏
U盘故障排除经验谈
基于贝叶斯估计的短时空域扇区交通流量预测