作者:王 毅,石小木,孙建风 来源: 单片机与嵌入式系统
摘要:提出了一种利用ATmega8单片机对ISD2500系列语音芯片进行控制的智能语音系统,此系统使用灵活,易于功能升级,具有良好的应用前景。提供了硬件连接电路和关键源程序。
关键词:语音芯片;单片机;智能控制;ISD2500
1 引言
语言是信息交流的最直接工具。在工业领域,在传统的人机交互中,人们往往通过数码显示、光、电结合来接收机器发出的信息,这是由当时的技术水平所决定的。随着半导体技术和计算机技术的飞速发展,语音技术也在不断取得突破,尤其是语音合成技术正在日臻完善,新型语音芯片不断涌现,美国ISD公司生产的 ISD2500系列语音芯片就是其中的优秀产品。它可以采用单芯片控制方式,也可以采用微处理器控制方式。
2 ISD2500系列语音芯片介绍
ISD2500系列语音芯片是一种高保真录放一体化的单片固态语音集成电路,采用了ISD公司的专利“直接模拟存储技术”,把模拟数据成功地存入半导体存储器中。这种突破性的EEPROM存储方法可以将模拟数据直接写入单个存储单元,而不需要A/D或D/A转换。这种技术产生的效果是:(1)比同等的数字方式增加了集成度;(2)模拟数据的存储是不挥发的。按录放时间的不同,ISD2500系列芯片可以分为ISD2560、2575、2590和25120 4种型号。
2.1 ISD2500的封装和引脚功能
ISD2500采用DIP-28封装,引脚排列如图1所示,引脚功能如表l所列。
2.2 工作模式
当最高位地址(MSB)A8、A9都为高电平时,地址端就作为操作模式选择端(高电平有效)。其工作模式如表2所示。
使用工作模式时需要注意两点:
(1)所有工作模式下的操作都是从O地址开始,以后的操作根据模式的不同,而从相应的地址开始工作。当电路中录音转放音或进入省电状态时,地址计数器复位为0。
(2)工作模式位不加锁定,可以在MSB地址位为高电平时,CE电平变低的任何时间执行工作模式操作。如果下一片选周期MSB地址位中有一个(或两个)变为低电平,则执行信息地址,即从该地址录音或放音,原来设定的工作模式状态丢失。
3 ISD2500和单片机的接口和编程
ISD2500系列语音芯片结构简单、使用方便,可以构成简单的单芯片应用系统。但在很多场合下,由于语音数据的录/放需要由其他信号自动控制,因此单芯片的ISD2500并不能满足应用的要求,这时就必须采用微控制器的语音系统,将不同的工作模式组合起来,根据需要灵活的录制和播放多条信息。ISD2500可以与各种微控制器构成智能语音系统。本文采用 Atmel公司AVR系列单片机中的ATmega8为例与ISD2500构成一个基本电路,此电路为一硬件平台,可根据不同要求做相应扩展。
以放音过程为例,其操作过程如下:
(1)器件上电;
(2)PD端置低电平;
(3)输入放音起始地址;
(4)等待上电延迟(TPUD)后,使CE端由高变低,下降沿执行放音操作。此时器件不再影响地址端和录放控制端的再次跳变,注意在CE变低前的控制/地址建立时间(TSET)内,应保持上述引脚的稳定;
(5)在遇到EOM标志时,器件继续输出声音,当EOM脉冲(TEOM)结束时,放音停止。
录音操作与放音操作过程基本一致,不再赘述。
具体硬件连接电路如图2所示。其中S1为“录音”键,S2为“播放”键,S3为“段”操作键。
使用单片机对ISD2500进行控制时需注意以下几点:
(1)ISD2500系列地址建立时间(TSET)为300 ns,即应保证地址信号在CE下降沿之前有300 ns的时延。有些速度很快的单片机就需要加延时。
(2)ISD2500系列EOM脉冲宽度的典型值为12.5 ms,放音时可以用查询或外部中断的方式来检测EOM端的上升沿,因为只有当EOM端变为高电平后,CE信号才能开始下一个操作。其软件流程如图3所示。
关键源程序如下:
4 结束语
试验证明,ISD2500系列语音芯片与ATmega8单片机配合使用收到了良好的使用效果。它可以非常轻松的进行扩展和移植,应用到机器人语音提示、飞机自动告警以及心电信号记录回放等系统中去,具有十分广阔的应用前景。