基于CPLD和VS1011E解码器的电梯语音系统
通过音量控制单元,同时备份到音频FIFO中。音频FIFO保持数据,并作为采样率转换器和DAC的输入。采样率转换器将所有不同采样率转换成CLKI/512,输送给DAC。DAC按位依次产生立体声模拟信号,这些信号紧接着送到耳机功率放大器中。 由于本系统为电梯系统,推动大功率扬声器发声,需要外置功放。功放采用的是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解码器的语音系统如今被应用到很多领域,如公共汽车的站名播报系统等。
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- 用CPLD实现FIR数字滤波器的设计(08-07)
- 基于DSP+CPLD的交流电机调速在水处理控制中的应用(11-27)
- 一种基于DSP的张力、深度、速度测量系统(04-15)
- 用双端口RAM实现与PCI总线接口的数据通讯(05-06)
- 基于DSP和CPLD的宽带信号源的设计(07-26)