一般简单的语音合成就是用有限的存储单元存储基本语音单元,进而从有限的存储单元中合成出无限词汇,组成连续语句。而为了节省存储空间一般将语音单元压缩成MP3格式存储。并通过MP3解码后播放
目前市场上较多的MP3解决方案是:MP3控制器+MP3解码芯片+NAND Flash。这种方案的MP3并不适合与商业或工业场合,因为对MP3中的音频文件修改时还需要用计算机设备才能完成,这在许多场合是很难满足或成本较高的。所以商业或工业领域所需要的MP3播放器,需要支持自动从U盘或SD卡等移动存储设备中转移数据的能力。
为了满足这样的需求,我们提出了一种嵌入式语音播放的解决方案
----单片机 + NAND + VS1003。
此方案用SD卡把音频文件从拷贝大NAND中去,然后再有单片机从NAND中读取文件送入VS1003进行播放。拷贝操作由单片机自动完成。用户操作简单。
方案优势
§ 单片机技术门槛低,容易进行二次开发
§ 主流VS1003解码芯片,能够对MP3、WAV、WMA、MIDI等多种音频格式文件进行解码
§ 音乐存放在NAND中,稳定性好
§ 音乐从SD卡存入模块中的NAND里,自动完成,操作简单
§ 针对Nand Flash的坏块管理,延长Flash的使用寿命
§ 对文件系统的的优化,最大程度减轻了文件系统的开销,从而提高了文件的读取速度
§ 成本低,性价比高
单片机+VS1003MP3方案的系统框图。
§ 在该方案中主芯片采用STC12LE5A系列的单片机
该芯片采用增强型8051内核,功耗低,速度比普通的8051快8-12倍。片内Flash程序存储器最大可达62KB,片内RAM高达1280B。提供1个高速SPI接口,和多达达44个GPIO接口(GPIO有4种工作模式:准双向、推挽、输入、开漏),引脚与普通8051兼容。
§ 解码芯片采用VS1003
VS1003
是来自芬兰 VLSI 半导体公司的一款音频芯片,性价比极高,并且使用非常简单。芯片支持MP3、WAV、WMA、MIDI等多种音频格式的硬件解码,音质可与中高档次的MP3播放器相媲美。§ 方案中设计音频文件从SD卡中拷贝到NAND里进行播放
考虑工业或某些商业场合对可靠性和稳定性要求较高,音频文件被放在播放模块的NAND Flash中,单片机从NAND中读取文件传送给VS1003。此方案中,单片机的GPIO余量较大,可以做其他功能的扩展(如按键、LED等)。此方案最高可播放320kbps的MP3文件。
§ 稳定性高,满足工业场合应用
因为工业场合对设备的稳定性,抗震动,抗干扰等性能要求较高,因此方案中选择把音频文件存放在
NAND中,电路板上没有对震动干扰敏感的器件或设备,因此该方案音频文件更新功能操作灵活,而又不失稳定性。 从系统的功能、可靠性方面考虑可以选择使用NAND flash作为存储介质。nand flash一次传输为8位,大大减轻了单片机开销。在工业控制方面使用NAND flash更加牢固。§ 方案的可裁剪性
方案中的片外RAM,是在使用较复杂应用程序时做的内存扩展,简单应用中不需要扩展。也可以选择只使用SD卡作为MP3音频存储介质的方案,SD卡数据传输用的是SPI模式,数据按位传输,这将导致播放高位率(>320kbps)的MP3文件时会不流畅,但对一般的需求是完全能够满足的。
§ 串口方式固件烧写
单片机程序通过串口进行烧写,便于设备的维护和更新。产品开发投资少,零风险。