一、简述
所谓语音芯片,就是在人工或者控制器的控制下可以录音和放音的芯片。语音信号是模拟量,语音芯片存储播放声音的基本工作方式为:声音-模拟量-A/D-存储-D/A-模拟量-播放。采用此种方式语音芯片外围电路比较复杂,声音质量也有一定的失真。而另一类语音芯片采用EEPROM存储方式,将模拟语音数据直接写入半导体存储单元中,不需另加A/D和D/A转换电路,而且语音音质自然。
◆使用方便的单片32至120秒语音录放
◆多段信息处理,可分1至320/600段
◆高质量、自然的语音还原技术
◆不耗电信息存100年(典型值)
◆边沿/电平触发放音
◆100000次录音周期(典型值)
◆手动操作/微控制器控制兼容
◆片内免调整时钟,可选外部时钟
◆多片直接级联,延长录放时间
◆无需开发系统
◆5V单电源工作,维持电流1uA
◆DIP,SOLC,TSOP封装及工业级
表1~1型号与性能对照
| 型号 | 时间 | 输入采样 | 典型带宽 | 最大段数 | 最小段数 | 外部钟频 |
| 2532 | 32秒 | 8.0KHz | 3.4KHz | 320 | !00ms | 1024.0KHz |
| 2548 | 48秒 | 5.3KHz | 2.3KHz | 320 | 150ms | 682.7KHz |
| 2560 | 60秒 | 8.0KHz | 3.4KHz | 600 | 100ms | 1024.0KHz |
| 2590 | 90秒 | 5.3KHz | 2.3KHz | 600 | 150ms | 682.7KHz |
| 25120 | 120秒 | 4.0KHz | 1.7KHz | 600 | 200ms | 512.0KHz |
图1~1、ISD2560/90/120内部框图
ISD2500系列具备微控制器所需控制接口。通过操纵地址和控制线可完成不同的任务,实现复杂的信息处理,如信息的组合,连接,设定固定的信息段,信息管理等。ISD2500可不分段,也可按最小段长为单位任意组合分段,参见表1~1“最大段数”。
芯片采用多电平直接模拟量存储专利技术,每个采样值接存储在片内单个EEPROM单元中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。采样频率从4.0,5.3,6.4到8.0KHz,同一第列的产品休样频率越低,录放时间越长, 但通频带和音质有所降低。片内信息可保存100年(无需后备电源),EEPROM单元可反复录音十万次
图1~2、ISD2560/90/120硬封装引脚图
二、引脚描述
电源(VCCA,VCCD)模拟和数字电源。芯片内部的模拟和数字电路使用不同的电源总线,并且分别引到外封装上,这样可使口若悬河最小。模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近芯片。
地线(VSSA,VSSD)芯片内部的模拟和数字也可使用不同的地线,这两脚最好在引脚焊盘上相连,因此这两脚最好通过低阻抗通路连接到地。
节电控制(PD)本端拉高使芯片停止工作, 进入不耗电的节电状态,芯片发生溢出,即/OVF端输出低电平后,要将本端短暂变高复位到录/放空间的开始位置,才能使之再次工作,另外,此引脚在模式6下还有特殊用途。
片选(/CE)本端变低后(而且PD为低),允许进行录放操作。芯片在本端的下降沿锁存地址线和P/-R端的状态,另外,此引脚在模式6下还有特殊用途。
录放模式(P/-R)本端状态在/CE的下降沿锁存。高电平选择放音,低电平选择录音。录音时,由地址端提供起始地址,录音持续到/CE或PD变高,或内存溢出;如果是前一种情况,芯片自动在录音结束处写入EOM标志。放音时由地址端提供起始地址,放音持续到EOM标志。如果/CE一直为低,或芯片工作在某些操作模式,放音则会忽略EOM,继续进行下去,直到发生溢出为止。
信息结尾标志(/EOM) EOM标志在录音时由芯片自动插入到该信息的结尾。放音遇到EOM时,
本端输出低电平脉冲。芯片内部会检测电源电压以维护信息的完整性,当电压低于3.5V时,本端变低,芯片只能放音。在模式状态下,可用来驱动LED,以指示芯片当前的工作状态。
溢出标志(/OVF)芯片处于存储空间末尾时本端输出低电平脉冲表示溢出,之后本端状态跟随/CE端的状态,直到PD端变高复位。本端可用于级联多个ISD2560系列器件以增加录音存储的时间。
话筒输入(MIC IN)本端连至片内前置放大器。片内自动增溢控制电路(AGC)将置增益控制在-15至24dB。外接话筒应通过串联电容耦合到本端。耦合电容值和本端的10KΩ输入阻抗决定了芯片频带的低频截止点。
话筒参考(MIC REF)本端是前置放大器的反向输入。当以差分形式连接话筒时,可减小噪声,提高共模抑制比。
自动增益控制(AGC) AGC动态调整前置增益以补偿话筒输入电平的宽幅变化,使得录制变化很大的音量(从耳语到喧嚣声)时失真都能保持最小。响应时间取决于本端的5KΩ输入阻抗外接的对地电容(即线路图中C2)的时间常数。释放是境取决于本端外接的并联对地电容和电阻(即线路图中R2和C2)的时间常数。470KΩ和4.7uF的标称值在绝大多数场合下可获得满意的效果.
模拟输出(ANA OUT)前置放大器的输出.前置电压增益取决于AGC端电平.
模拟输入(ANA IN )本端为芯片录音信号输入.对话筒输入来说ANA OUT端应通过外接电容连至本端.该电容和本端的3KΩ输入阻抗给出了芯片频带的附加低端截止频率.其它音源可通过交流耦合直接连至本端(绕过了TER的前置)。
喇叭输出(SP+、SP-)可对输出端级驱动16Ω以上的喇叭(内存放音时功率为12.2mW,AUX IN 放音时功率为50mW).单端使用时必须在输出端和喇叭间接耦合电容,而双端输出既不用电容又能将功率提高至4倍.ISD2569系列器件都有一个在芯片上的差分扬声器驱动器。录音和节电模式下,它们保持为VSSA电平.注意:多个芯片的喇叭输出端绝对不能并联,否则可能损坏芯片!不用的喇叭输出端绝对不能接地!
辅助输入(AUX IN)当/CE和P/-R为高,放音不进行或处入放音溢出状态时,本端的输入信号过内部功放驱动喇叭输出端.当多个2500芯片级联时,后级的喇叭输出通过本端连接到本级的输出放大器,为防止噪声,建议在放内存信息时,本端不要有驱动信号。
外部时钟(XCLK)本端内部有下拉元件,不用时应接地。芯片内部的采样时钟在出厂前已调节器校,误差在+1%内.商业级芯片在整个温度和电压范围内,频率变化在+2.25%内.工业级芯片在整个温度和电压范围内,频率变化在+5%内,建议使用稳压电源。若要求更高精度或系统同步,可从本端输入外部时钟,频率如表2~3“外部钟频”所示。由于内部的防混淆及增滑滤波器已设定,故上述推荐的时钟频率不应改变。输入时钟的占空比无关紧要,因内部首先了进行分频。
地址/模式输入(AX/MX)地址端有个作用,取决于最高两位(MSB,即2532/2548的A7和A8,或2560/2590/25120的A8和A9)的状态。当最高两位中有一个为0时,所有输入均解释为地址位,作为当前录入操作的起始地址。地址端只作输入,不输出操作过程中的内部地址信息。地址在/CE的下降沿锁存。
三、操作模式
ISD2560/90/120系列内置了若干操作模式,可用最少的外围器件实现最多的功能。操作模式也由地址端控制;当最高两位都为1时,其它地址端置高就选择某个(或某几个)模式。因此操作模式和直接寻址相互排斥。操作模式可由微控制器也可由硬件实现。使用操作模式有两点要注意:(1)所有操作最初都是从0地址,即存储空间的起始端开始。后续操作根据选用的模式可从其它地址开始。但是,电路由录转为放,或由放转为录时(M6模式除外),或执行了掉电周期后,地址计数器复位为0。(2)当/CE变低,最高两地址位同高时,执行操作模式。这种操作模式一直有效,除非/CE再次由高变低,芯片重新锁存当前的地址/模式端电平,然后执行相应操作。
表1~2 操作模式简表
| 模式 | 功能 | 典型应用 | 可组合使用的模式 |
| M0 | 信息检索 | 快进入信息 | M4、M5、M6 |
| M1 | 删除WOM | 在最后一条信息结束处放EOM | M3、M4、M5、M6 |
| M3 | 循环 | 从0地址连续放音 | M1、M5、M6 |
| M4 | 连续寻址 | 录放连续的多段信息 | M0、M1、M5 |
| M5 | /CE电平有效 | 允许暂停 | M0、M1、M3、M4 |
| M6 | 按键模式 | 简化外围电路 | M0、M1、M3 |
M1(删除EOM标志)——使分段信息变为一条信息,仅在信息后保留一个EOM标志.这个模式完成后, 录入的所有信息就变成一条连续的信息。
M2(未用)——保留。
M3(信息循环)——循环重入位于存储空间起始处的那条信息。一条信息可以完全占满存储空间,那么循环就从头至尾进行,这进/OVF不变低。
M4(连续寻址)——正常操作中,重放遇到EOM标志时, 地址计数器会复位。M4禁止地址计数器复位,使得信息可连续录放或重放。
M5(/CE电平有效)——通常,录音时/CE为电平触发,放音时/CE为边沿触发。本模式将放音时/CE设置为电平触发,特别适用于需用/CE终止放音的场合。操作为:/CE变低时,芯片从内存起始放音,/CE变高放音即刻停止。/CE再变低后。仍从内存起处开始放音,除非M4也是高。
M6(按键模式)——本模式的外围电路最简,成本大为降低;在录放结束,/CE变高后,芯片自动进入节电模式。而且,/CE、PD、/EOM的作用重新定义如下:
/CE(开始/暂停,低脉冲有效)——/CE端的下降沿控制操作的开始和暂停。当芯片不录不放时,/CE端的下降沿就启动录/放操作。之后,如果在芯片没遇到EOM标志(放音时)或没发生溢出疥,再来一个/CE下降沿将暂停当操作。暂停后,地址并不复位,再来一个/CE下降沿后从暂停处继续操作。
PD(停止/复位,高脉冲有效)——PD端的上升沿停止妆前录/放操作,并复位地址。
/EOM(运行指示)——/EOM变高表示录/放操作正在进行,可驱动LED等。
四、典形应用电路
图1~3、ISD2560/90/120常规应用
图1~4、ISD2560/90/120微控制器控制
图1~5、ISD2560/90/120按键模式
程序要实现下面的过程。
“开始”键按下后,单片机控制PD、P/R引脚为高电平,并指定录音地址,启动录音过程。在预先 设定的时间内(60s内)结束录音,松开“开始”键,单片机控制P/R引脚回到高电平,即完成一段语音的录制。之后打开外部中断0,指定存放地址,启动放音程序,每次放音结束时,EOM输出会触发单片机的外部中断0,经过适当的延时后,重新启动第二次放音,这样重复3次关闭外部中断0,流程结束,等待下一次录音。EOM标志在录音时由芯片自动插入到录音信息的结尾处,放音遇到EOM时,会产生低电平脉冲(约12.5ms),触发单片机中断,单片机必须在检测到此输出的上升沿后才播放的录音,否则播放的语音就不连续,而且会产生“啪啪声”。
五、程序说明:
Uchar conut; //重复播放次数计数器
UcharStartFlag; //开始键按下标志
Uchar IdleFlag; //系统是否处于空闲状态标志
/*定义语音芯片的控制引脚*/
Sbit START = P1^0;
Sbit EOM = P1^4;
Sbit PR = P1^5;
Sbit PD = P1^6;
Sbit CE = P1^7;
Void delay(uint t)
{
Uint i;
While (t--)
{
For (i=0;i<120;i++)
{}
}
}
/*外部中断0服务子程序*/
Void out_0() interrupt 0 using 1
{
EX0 = 0; //关外部中断0
PD =1; //进入节电状态
If(count<2) //再重播2次,共3次重播
{
Count ++;
Delay(500); //延时500ms
P2 = P2&0xFC; //A8=A9=0;
P0 = P0&0x00; //起始地址为0;
Playback(); //从地址0处播放;
EX0 = 1; //开外部中断0;
}
Else
{
IdleFlag = 1; //变为空闲状态
Count = 0;
}
}
/*主程序*/
Void main()
{
EA = 1; //开CPU中断
Count = 0;
StasrtFlag =0;
IdleFlag = 1;
While(IdleFlag ==1)
{
If(START)
{
Delay(10); //延时去抖动
If(START)
StartFlag = 1; //开始键按下标志
}
If(StrartFlag == 1)
{
Do
{
P2 = P2&0xFC; //A8=A9=0;
P0 = P0&0x00; //起始地址为0;
Record(); //录音开始,存放在地址0处;
}
While(START); //开始键松开;
StartFlag = 0;
PR = 1; //结束录音;
PD =1; //进入节电状态;
Delay(500); //延时500ms再播放录音;
EX0 = 1; //开外部中断0;
P2 = P2&0xFC; //A8=A9=0;
P0 = P0&0x00; //起始地址为0;
Playback(); //从地址0处第一次播放;
IdleFlag = 0; //当前不空闲,按开始键无效;
}
}
}
}
/*录音函数*/
Void record(void)
{
CE = 0; //片选有效;
PD = 0; //非节电模式;
PR = 0; //录音;
}
/*播放函数*/
Void playback(void)
{
CE = 0; //片选有效;
PD = 0; //非节电模式;
PR = 1; //录音;
}下载本文