首页 » 业界动态 » 基于CPLD和VS1011E解码器的电梯语音系统设计

基于CPLD和VS1011E解码器的电梯语音系统设计

作者:  时间:2009-03-02 23:06  来源:
 VS1011E的工作流程如图3所示。VS1011E的工作流程为:首先MP3或者WAV格式音频文件通过SDI总线进入芯片内部,并解码。解码后,如果SCL_AIADDR!=0,将会执行应用区代码,代码地址由相应的地址寄存器提供。然后,按照SCL_BASS寄存器(SB_AMPLITUDE位和ST_AMPLITUDE位)的设置,数据可能会被送到低音和高音优化器进行音效处理。此后,数据通过音量控制单元,同时备份到音频FIFO中。音频FIFO保持数据,并作为采样率转换器和DAC的输入。采样率转换器将所有不同采样率转换成CLKI/512,输送给DAC。DAC按位依次产生立体声模拟信号,这些信号紧接着送到耳机功率放大器中。

VS1011E的工作流程

  由于本系统为电梯系统,推动大功率扬声器发声,需要外置功放。功放采用的是CD4752CZ,该功放具有较大的电压范围和抗干扰能力,适合电压波动大、外界干扰强的电梯工作环境。

  3.5 Flash存储器

  采用Samsung公司的NAND Flash K9F5608作为存储器。K9F5608拥有32 MB的空间,完全满足电梯语音系统的要求。

  NAND Flash以块(block)和页(page)为存储单元。K9F5608包括2 048块,每一块又包括32页,一页大小为528字节,依次分为2个256字节的数据区,最后是16字节的备用空间。

  K9F5608的读、写和擦除操作均由命令完成。读/写操作是以页为单位进行。擦除操作是以块为单位,不能字节擦除,而且在每次改写操作之前需要先擦除一整块;每一块的擦除次数有限,为10万次左右,数据保存时间超过10年。典型的读操作时间为50 ns/字,写操作时间为200 μs/页,擦除操作时间为2 ms/块。

  4软件设计

  4.1主流程图

  电梯在运行过程中,如果无人按键,电梯语音系统则自动播报广告、天气预报等信息,同时伴有点阵或液晶显示。当有按键按下时,语音系统则会根据按键值调用相应的按键语音处理程序。主程序流程图如图4所示。

主程序流程图 

  4.2 YS1011E的软件设计

  软件设计采用VS1011E音频解码器,其控制流程如图5所示。

控制流程

  控制MP3解码器时应注意以下几点:

  •   设置内部控制寄存器MODE的参数。包括支持文件格式、软启动设置、数据流模式设置、DCLK触发沿设置以及SDI数据首位设置;
  •   如果时钟速率不是24.576 MHz,则需要设置SCI_CLOCKF寄存器。若通过改变SCI_CLOCKF倍频时钟,应将适当的采样速率写人SCI_AUDATA寄存器,等待至少11 000个时钟后才能SPI通讯;
  •   设置音量寄存器SCI_VOL,0为最大音量,0xFEFE为静音,0xFFFF触发模拟调电模式;
  •   强化低音和高音,可设置寄存器SCI_BASS;
  •   使用用户代码,SCI_AIADDR置为零;
  •   采用RAM级的用户代码,激活SCI_WRAM、SCI_WRAMADDR、SCI_AIADDR装载数据能够实现所需功能。

  5 结束语

  本系统已经投入市场,音质良好、功能稳定。基于CPLD和VS1011E解码器的语音系统如今被应用到很多领域,如公共汽车的站名播报系统等。

相关推荐

多元化整合:PCB抄板搭上尧顺科技顺风车

PCB  CPLD  2013-03-12

Altium与Altera发布全新在线元件资源和软件支持

Altium  FPGA  CPLD  2012-02-15

CSR为三星平板电脑提供aptX蓝牙音频编解码器

CSR  解码器  aptX  2011-11-17

嵌入式系统的实时数据接口扩展

嵌入式系统  CPLD  2011-09-02

基于CPLD的USB总线的隔离接口实现

CPLD  USB总线  2011-08-17

基于MAX6675多路温度采集系统设计与实现

温度采集  MAX6675  CPLD  2011-07-07
在线研讨会
焦点