内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体






基于单片机控制的新型智能电梯语音系统设计

时间:2009-08-06 来源:电子工程世界 作者:陈一凡 点击:

    语音系统对电梯来说是不可缺少的部分,比如进行楼层报数、方向提示、报警告示、消防对讲甚至广告宣传等。目前绝大多数电梯使用语音芯片来进行语音存储和播放,而语音芯片系统存在一些缺陷,比如外围电路复杂、音质不佳、成本偏高、容量有限以及语音更改不便等。有鉴于此,本文设计了一款基于单片机控制的智能电梯语音系统。

系统概述
    电梯控制系统的基本功能,是根据用户的楼层按键信息,显示到往楼层数字,语音播报到达楼层。系统框图如图1所示。

图1 电梯语音系统结构框图

硬件设计
    根据FLASH的读写规则和MP3的解码协议,事先设定CPLD的逻辑规则。控制器按照输入的信息,向CPLD发出控制命令和传送数据。CPLD根据接收到的命令按照逻辑规则读写FLASH以及对MP3设定内部控制寄存器和输送音频数据。MP3输出的模拟信号可以直接推动耳机发音,但是如果需要推动大功率扬声器,还需要外接功率放大器。

    系统微控制器采用了STC89C58RD+C,它是新一代51增强型高性能单片机,具有加密性强、超强抗干扰、超低功耗、在系统可编程、可供应内部集成 MAX810 专用复位电路等特点。STC89C58RD+C拥有32K的FLASH和16K的EEPROM,而值得关注的是其内含的1280 Byte内部SRAM存储空间,在音频数据处理和显示数据处理需要进行较大数据缓冲的情况下,选择该款具有大容量内部存储器的单片机,可以胜任系统的控制要求。

    本文使用CPLD负责逻辑控制和数据传递。CPLD电路使用XC9572-VQ64,它拥有72个宏单元、1600个可用门电路、52个I/O口,具有低至2.5V供电,可在线编程等特性。

MP3解码芯片VS1011E工作原理与电路设计
    VS1011E音频解码芯片为VS10XX系列的第三代产品,它内部包含一个高性能、低功耗的DSP处理核,一个5.5KB 片内RAM可供用户存储代码和数据,一个串行SPI总线接口,一个双声道采样频率可调的16位DAC。工作于12.288MHz~14MHz或24.576MHz~28MHz时钟频率下,可以解码MPEG1&2 Layer1、2、3以及MPEG2.5 Layer3、WAV和PCM格式文件。

VS1011E的工作流程

    VS1011E的工作流程如图2所示。

图2 解码芯片VS1011E工作流程图

    本系统中,MP3或WAV格式音频文件首先通过SDI总线进入芯片内部,并解码。

    解码后,如果SCL_AIADDR != 0,将会执行应用区代码,代码地址由相应的地址寄存器提供。然后,按照SCL_BASS寄存器(SB_AMPLITUDE位和ST_AMPLITUDE位)的设置,数据可能会被送到低音和高音优化器进行音效处理。此后,数据通过音量控制单元,同时备份到音频FIFO中。音频FIFO保持数据,并作为采样率转换器和DAC的输入。采样率转换器将所有不同采样率转换成CLKI/512,输送给DAC。DAC按位依次产生立体声模拟信号。

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

存储器的组织结构
    系统采用NAND闪存K9F5608作为存储器。NAND闪存以块(block)和页(page)为存储单元。K9F5608包括2048块,每1块又包括32页,1页大小为528字节,依次分为2个256字节的数据区,最后是16字节的备用空间。

软件设计
    电梯在运行过程中,如果没人去按键,那么电梯语音系统就播报一些广告、天气预报等,同时根据要求伴有点阵或液晶显示。当有键按下时,语音系统则会根据按下的键值调用相应的按键处理程序,比如到达的楼层数等。主程序流程图如图3所示。

图3 系统主流程图

VS1011E的软件设计
    本系统音频解码芯片采用VS1011E,控制流程如图4所示。

图4 解码芯片VS1011E控制流程图

    VS1011E通过一个工作于从模式的SPI串行总线与主机进行数据和控制信息的交流,音频数据通过串行数据接口(SDI)传送,控制数据则通过串行控制接口(SCI)传送。

    VS1011E的SPI接口具有两种工作模式:VS1002新模式(SM_SDINEW = 1)和VS1001兼容模式(SM_SDINEW = 0)。当SM_SDISHARED = 0时,控制信号和数据信号的传送分别采用XCS和XDCS作为同步信号;当SM_SDISHARED = 1时,共用XCS作为同步信号。

    作为从机工作模式,VS1011E通过一个信号线Dreq指示是否允许主机传送数据,当Dreq为高时,VS1011E至少可以接受32KB的SDI数据或者SCI控制命令。

软件控制要点
     对MP3解码器进行控制时应注意以下6点:

(1)设置内部控制寄存器MODE的参数。包括支持文件格式、软启动设置、数据流模式设置、DCLK触发沿设置和SDI数据首位设置等。SM_SDINEW和SM_SDISHARED设置也在这里进行。

(2)如果时钟速率不是24.576MHz,需要设置SCI_CLOCKF寄存器。若通过改变SCI_CLOCKF使用倍频时钟,应该将适当的采样速率写入SCI_AUDATA寄存器,等待至少11000个时钟后才可以进行SPI通信。

(3)设置音量寄存器SCI_VOL;0位为最大音量,0xFEFE位为静音,0xFFFF将触发模拟调电模式。

(4)若希望强化低音和高音,可以设置寄存器SCI_BASS。

(5)若使用用户代码,通过将SCI_AIADDR置零关闭它。
(中国集群通信网 | 责任编辑:陈晓亮)

中国集群通信网,国内首家集群通信专业网站。

Copyright © PttCn.Net, All Rights Reserved.   

联系我们 联系我们 中国集群通信网 对讲机学堂 对讲机世界