语音芯片1760资料.docx
《语音芯片1760资料.docx》由会员分享,可在线阅读,更多相关《语音芯片1760资料.docx(25页珍藏版)》请在冰点文库上搜索。
语音芯片1760资料
ISD1700是华邦ISD公司2007年新推出的单片优质语音录放电路,该芯片提供多项新功能,包括内置专利的多信息管理系统,新信息提示(vAlert),双运作模式(独立&嵌入式),以及可定制的信息操作指示音效。
芯片内部包含有自动增益控制、麦克风前置扩大器、扬声器驱动线路、振荡器与内存等的全方位整合系统功能。
一、特点:
·可录、放音十万次,存储内容可以断电保留一百年
·两种控制方式,两种录音输入方式,两种放音输出方式
·可处理多达255段以上信息
·有丰富多样的工作状态提示
·多种采样频率对应多种录放时间
·音质好,电压范围宽,应用灵活
二、电特性:
·工作电压:
2.4V-5.5V,,最高不能超过6V
·静态电流:
0.5-1μA
·工作电流:
20mA
用户可利用震荡电阻来自定芯片的采样频率,从而决定芯片的录放时间和录放音质。
下表为ISD1700的参数表:
(图一)
(图二)
而芯片的采样率可以通过外部振荡电阻来调节:
采样频率(KHZ)
12
8
6.4
5.3
4
ROSC阻值(KΩ)
60
80
100
120
160
三、独立按键工作模式
ISD1700的独立按键工作模式录放电路非常简单(后附图),而且功能强大。
不仅有录、放功能,还有快进、擦除、音量控制、直通放音和复位等功能。
这些功能仅仅通过按键就可完成。
在按键模式工作时,芯片可以通过LED管脚给出信号来提示芯片的工作状态,并且伴随有提示音,用户也可自定4种提示音效。
录音操作:
按下REC键,/REC管脚电平变低后开始录音,直到松开按键使电平拉高或者芯片录满时结束。
录音结束后,录音指针自动移向下一个有效地址。
而放音指针则指向刚刚录完的那段语音地址。
放音操作:
放音操作有两种模式,分别是边沿触发和电平触发,都由PLAY管脚触发。
A)边沿触发模式:
点按一下PLAY键,PLAY管脚电平变低便开始播放当前段的语音,并在遇到EOM标志后自动停止。
放音结束后,播放指针停留在刚播放的语音起始地址处,再次点按放音键会重新播放刚才的语音。
在放音期间,LED灯会闪烁直到放音结束时熄灭。
如果在放音期间点按放音键会停止放音。
B)电平放音模式:
如果一直按住PLAY键,使PLAY管脚电平持续为低,那么会将芯片内所有语音信息播放出来,并且循环播放直到松开按键将PLAY管脚电平拉高。
在放音期间LED闪烁。
当放音停止,播放指针会停留在当前停止的语音段起始位置。
快进操作:
点按一下FWD按钮将FWD端拉低,会启动快进操作。
快进操作用来将播放指针移向下一段语音信息。
当播放指针到达最后一段语音处时,再次快进,指针会返回到第一段语音。
当下降沿来到FWD端时,快进操作还要决定于芯片当时的状态:
A)如果芯片在掉电状态并且当前播放指针的位置不在最后一段,那么指针会前进一段,到达下一段语音处
B)如果芯片在掉电状态并且当前播放指针的位置在最后一段,那么指针会返回到第一段语音处。
C)如果芯片正在播放一段语音(非最后一段),那么此时放音停止,播放指针前进到下一段,紧接着播放新的语音。
D)如果芯片正在播放最一段语音,那么此时,放音停止,播放指针返回到第一段语音,紧接着播放第一段语音。
擦除操作:
擦除操作分为单段擦除和全体擦除两种擦除方式,区别如下:
A)单个擦除:
只有第一段或最后一段语音可以被单个擦除。
点按一下ERASE健将ERASE管脚拉低,这时具体的擦除情况要看播放指针的状态:
·如果芯片空闲并且播放指针指向第一段语音,则会删除第一段语音,播放指针指向新的第一段语音(执行擦除操作前的第二段)
·如果芯片空闲并且播放指针指向最后一段语音,则会删除最后一段语音,播放指针指向新的最后一段语音(执行擦除操作前的倒数第二段)
·如果芯片空闲并且播放指针指向没有指向第一或最后一段语音,则不会删除任何语音,播放指针也不会被改变
·如果芯片当前正在播放第一段或最后一段语音,点按下ERASE键会删除当前语音。
B)全体擦除:
当按下ERASE键将ERASE管脚电平拉低超过2.5秒钟,会触发全体擦除操作,删除全部语音信息。
复位操作:
如果用RESET控制此管脚,建议RESET管脚与地之间连接一个0.1μF电容。
当RESET被触发,芯片将播放指针和录音指针都放置在最后一段语音信息的位置。
音量操作:
点按一下VOL键将VOL管脚拉低会改变音量大小。
每按一下,音量会减小一档,再到达最小档后再按的话,会增加音量直到最大档,如此循环。
总共有8个音量档供用户选择,每一档会改变4dB。
复位操作会将音量档放在默认位置,即最大音量。
FT直通操作:
按住FT键将FT管脚持续保持在低电平会启动直通模式。
出厂设定的是在芯片空闲状态,直通操作会将语音从Analn端直接通往喇叭端或AUD输出口。
在录音期间按下FT键,会同时录下Analn进入的语音信号。
四管脚功能说明:
管脚
名称
PDIP/SOIC
管脚
TSOP
管脚
引 脚 说 明
VCCD
1
22
数字电路电源
/LED
2
23
LED指示信号输出
/RESET
3
24
芯片复位
MISO
4
25
SPI接口的串行输出。
ISD1700在SCLK下降沿之前的半个周期将数据放置在MISO端。
数据在SCLK的下降沿时移出
MOSI
5
26
SPI接口的数据输入端口。
主控制芯片在SCLK上升沿之前的半个周期将数据放置在MOSI端。
数据在SCLK上升沿被锁存在芯片内。
此管脚在空闲时,应该被拉高
SCLK
6
27
SPI接口的时钟。
由主控制芯片产生,并且被用来同步芯片MOSI和MISO端各自的数据输入和输出。
此管脚空闲时,必须拉高。
/SS
7
28
为低时,选择该芯片成为当前被控制设备并且开启SPI接口。
空闲时,需要拉高
VSSA
8
1
模拟地
AnaIn
9
2
芯片录音或直通时,辅助的模拟输入。
需要一个交流耦合电容(典型值为0.1uF),并且输入信号的幅值不能超出1.0Vpp。
APC寄存器的D3可以决定Analn信号被立刻录制到存储器中,与Mic信号混合被录制到存储器中,或者被缓存到喇叭端并经由直通线路从AUD/AUX输出。
MIC+
10
3
麦克风输入+
MIC-
11
4
麦克风输入-
VSSP2
12
5
负极PWM喇叭驱动器地
SP-
13
6
喇叭输出-
VCCP
14
7
PWM喇叭驱动器电源
SP+
15
8
喇叭输出+
VSSP1
16
9
正极PWM喇叭驱动器地
AUD/
AUX
17
10
辅助输出,决定于APC寄存器的D7,用来输出一个AUD或AUX输出。
AUD是一个单端电流输出,而AuxOut是一个单端电压输出。
他们能够被用来驱动一个外部扬声器。
出厂默认设置为AUD。
APC寄存器的D9可以使其掉电。
AGC
18
11
自动增益控制
/VOL
19
12
音量控制
ROSC
20
13
振荡电阻,ROSC用一个电阻连接到地,决定芯片的采样频率
VCCA
21
14
模拟电路电源
/FT
22
15
在独立芯片模式下,当FT一直为低,Analn直通线路被激活。
Analn信号被立刻从Analn经由音量控制线路发射到喇叭以及AUD/AUX输出。
不过,当在SPI模式下,SPI无视这个输入,而且直通线路被APC寄存器的D0所控制。
该管脚有一个内部上拉设备和一个内部防抖动电路,允许使用按键开关来控制开始和结束。
/PLAY
23
16
播放控制端
/REC
24
17
录音控制端
/ERASE
25
18
擦除控制端
/FWD
26
19
快进控制端
RDY/INT
27
20
一个开路输出。
Ready(独立模式)
该管脚在录音,放音,擦除和指向操作时保持为低,保持为高时进入掉电状态。
Interrupt(SPI模式)
在完成SPI命令后,会产生一个低信号的中断。
一旦中断消除,该脚变回为高。
VSSD
28
21
数字地
五ISD1700的典型电路:
图1MIC录音电路
请问,isd1700模块与单片机at89s51怎样连接?
以下为Ningpanda的回复:
用单片机4个I/O口与ISD1700的MISO、MOSI、SCLK、SS连接,按规定的SPI时序通讯。
ISD1700语音组合精灵板是一块最小化的语音模块,用户可以不需要了解语音芯片及语音合成等的内部机理,只需简单的外部串口控制,就可以直接在喇叭上获得理想的语音合成效果。
板上语音芯片可插拔,可选用ISD1700全系列的芯片。
本精灵板结构紧凑体积仅半个烟盒大小,以标准组件模块方式灵活自如地应用在各种用户系统及各种产品空间中。
本模块特点是音质好,断电不丢信息并可自由录入语音内容;片内可擦写程序存储器的单片机(AT89C2051)使控制灵活功能强大;板载LM386功放可提供0.5W的喇叭输出。
一、设计
1、将音源分段录制ISD1700芯片。
将需要的语音单词先通过磁带录音机或多媒体电脑录制好,分成若干段(最大250段),再通过“ISD1700s高级语音编程拷贝机”全部自动分段写入到ISD1700芯片中,将此音源芯片插入本精灵板。
——ISD芯片可即录即放反复修改内容,内部语音及分段信息在断电后也能保持100年。
2、本精灵板上ISD1700语音芯片录好了31段如下常用字词:
“幺(00)、零(01)、壹(02)、贰(03)、叁(04)、肆(05)、伍(06)、六(07)、柒(08)、捌(09)、玖(0A)、十(0B)、百(0C)、千(0D)、万(0E)、温度(0F)、度(10)、正(11)、负(12)、现在(13)、正常(14)、偏高(15)、偏低(16)、上升(17)、下降(18)、号(19)、小时(1A)、分(1B)、秒(1C)、点(1D),嘟(1E)”等。
★如需其它专业广播级语音,请另行联系。
3、根据需要编写系统串行通讯程序,指令如下:
标准5V的TTL串口协议方式(TX、RX双线,串口方式一、无校验):
串口速率:
4800bit/s
引导码:
AAAA
句结束放音存储码:
FF(立刻语音合成放音,并存储该指令,以后可检查复听)
TX端放音忙信号:
低电平有效(空闲为高电平,语音合成放音期间变为低电平输出。
)
停止语音播放:
给AN端一个低电平信号,即可停止播放语音。
数据码:
码址与语音段位序号对应,如00为第一段,01为第二段,02为第三段,…….(FF段不可播放)每句话最多70段。
★厂家免费提供范例式的接口源程序供参考,也可以提供其他特定要求的接口设计。
4、举例说一句“嘟,现在温度126.5度,偏高。
”,应发码:
AAAA1E130F020C030B071D061015FF。
二、使用
1、性能:
电源电压5V,静态电流13mA,工作电流150mA,接口电平5V,外接喇叭8W,输出音频功率0.5W。
2、合成:
按需要和规定提供控制指令(5V的TTL232方式),用户可使用控制单片机的任意口线模拟通讯,本板即调用ISD语音芯片的相应段语音内容连续播放出来,语音合成放音期间TX端输出低电平
3、停止放音:
给“AN”端提供低电平信号,即可停止正在播放的语音。
4、换片学习:
如果更换语音芯片的内容或更换芯片,即需要先让系统学习一遍(将语音芯片的分段地址都搜索并存储起来)。
将短路跳针置于Learn位置,给模块加电,此时模块读出1700芯片的语音地址并储存,学习完毕后会将语音芯片内最后一段语音播放一遍表示放音完毕。
学习完毕后即将短路跳针置回Speach,系统断电再通电即可控制使用。
5、通讯问题:
本板采用11.0592MHZ晶振的单片机控制,采用4800波特率。
6、放音停顿:
如果在语音组合时需要语气停顿,则可以在语音芯片内录一段0.3秒左右的静音,在需要语音停顿的地方,将这段加上。
这样的效果比单纯的单片机延时
ISD1700T是我公司为方便技术人员快速熟悉和掌握ISD1700系列芯片独立按键模式下的各种操作而设计的一款简单实用电路板。
它适用于ISD1700全系列芯片,具有操作简单、功能完备等特点。
一.电路板介绍
PLAY
放音
VOL
音量调节
XH
循环
REC
录音
LINEIN
线路输入
FT
直通
ERASE
擦除
LINEOUT
线路输入
1700S
ISD1700全系列芯片
FWD
快进
VCC
电源
RESET
复位
SPK
喇叭
电气参数:
工作电压:
直流2.4V-5.5V,最高不超过6V
典型工作电压:
直流5V
静态电流:
0.5-1μA
工作电流:
20mA
SPK直推喇叭:
4-8Ω,最大0.5W
二.使用说明:
1.录音:
按住REC键不放,同时LED灯会亮起,此时对着MIC说话,说话内容就会录进ISD1700语音芯片里了。
录完一段后抬起此键,LED会同时熄灭,再次按下则开始录第二段,以后的各段依次操作。
2.放音:
有两种方式,边沿触发和电平触发。
(注:
录完音后放音指针会停留在最后录完段的起始地址处,此时放音则放最后一段)
A)边沿触发:
点按一下PLAY键即放当前段,放音期间LED闪烁直到放音结束时熄灭。
放音结束后放音指针指向刚放的段的起始地址处,即再次点按PLAY键还会放刚放完的这段。
B)电平触发:
常按PLAY键芯片会把所有的语音信息全部播放,且循环直到松开此按键。
3.快进:
执行放音操作前,点按一下此键放音指针会指向下一段,按两下则指向此段后的第二段起始。
放音期间点按此键则停止播放当前段接着播放下一段,如果当前播放的是最后一段,则停止播放最后一段播放第一段。
4.擦除:
单段擦除操作只能对第一段和最后一段有效,当放音指针位于第一段或最后一段时,点按此键则会擦除第一段或最后一段。
放音指针相应的会跳到擦除前的第二段或倒数第二段。
常按此键超过3秒芯片进入“全部擦除操作模式”,同时LED灯闪两下,继续按着此键,LED闪烁7下后熄灭,此时松开此键,芯片内的语音信息被全部擦除。
5.复位:
点按此键芯片执行复位操作。
复位后,放音和录音指针都指向最后一段,即放音指针指向最后一段起始,录音指针指向最后一段的最后。
此时执行放音则播放最后一段,执行录音则接着最后一段开始录新的最后一段。
6.调音:
点按此键可以调节芯片输出声音的大小。
芯片默认输出为声音最大值,每点按一下,声音按4DB衰减。
直到声音最小后,继续点按此键,每点按一下,声音增大4DB。
(注:
执行复位后,声音输出为最大)
7.循环:
放音前用短路插把循环插针短接,上电后自动循环播放当前段。
放音中途想停止放音有两种方法:
拔下短路插或者点按PLAY键。
8.直通:
当把此处短路时,线录输入的信号会直接通过喇叭播放出来。
9.线录:
把音频信号接到线录输入端,(注意信号端为插针的右边,插针的左边为信号地端)用短路插把直通控制端短接,此时按下REC录音键音频信号就被录进芯片了。
三.操作提示:
操作过程中,当点按任何按键芯片都不执行相应的操作,且LED闪烁七下后熄灭,确认各处接线正确后还是如此,说明芯片内部程序紊乱。
此时需要执行全部擦除操作,擦除完后再执行录音放音等操作即可。
ISD4004的录放音汇编程序
89C51-ISD4000语音电路程序AT89C51单片机
注:
本程序为ISD4002、4003的控制程序,ISD4004的程序须加些改动,请注意程序后边的注释。
SSEQUP1.0;片选
SCLKEQUP1.1;ISD4003时钟
MOSIEQUP1.2;数据输入
MISOEQUP1.3;数据输出
LEDEQUP1.7;指示灯
INTEQUINT0;中断
ANEQUP1.6;执行
STOPEQUP1.5;复位
PREQUP1.4;PR=1录音PR=0放音
;初始化
ORG0000H;
AJMPMAIN;
MAIN:
MOVSP,#10H;
MOVP1,#0FFH;
MOVP2,#0FFH;
MOVP3,#0FFH;
MOVP0,#0FFH;
CLREA;
MAII:
SETBLED;关指示灯
ACALLDSTOP;ISD掉电
MAS0:
MOV3AH,#200;
MAS1:
JBAN,MAS0;等按AN键
DJNZ3AH,MAS1;
ACALLUP;ISD上电
MOV20H,#00H;ISD低位地址
MOV21H,#00H;ISD高位地址
JBPR,REC;PR=1录音
AJMPPLAY;PR=0放音
;SETREC16位
;从指定地址录音10100
REC:
MOVA,20H;发地址A7-A0
ACALLISDX;
MOVA,21H;发地址A9-A8
SETBACC.7;
CLRACC.6;
SETBACC.5;
CLRACC.4;
CLRACC.3;
ACALLISDX;
SETBSS;关片选
;REC8位
;从当前地址录音10110
REC1:
MOV36H,#10;
REC2:
ACALLYS50;延时录音
DJNZ36H,REC2;
CLRLED;开指示灯
MOVA,#0B0H;发10110XXX
ACALLISDX;
SETBSS;关片选
REC3:
MOV35H,#200;
REC4:
JNBINT,REC7;OVF=0芯片溢出
JNBAN,REC3;
DJNZ35H,REC4;
SETBLED;关指示灯
ACALLSTOPP;停止当前操作
REC5:
JNBSTOP,REC6;中断RESET
JBAN,REC5;等待AN=0
ACALLSTOPP;停止当前操作
AJMPREC1;
REC6:
CLRSCLK;时钟SCLK=0
SETBSS;关片选
ACALLSTOPP;停止当前操作
AJMPMAII;
REC7:
SETBLED;关指示灯
MOV36H,#15;
REC8:
ACALLYS50;延时录音
JBAN,REC6;等待AN=1
DJNZ36H,REC8;
CLRLED;
MOV36H,#15;
REC9:
ACALLYS50;延时录音
JBAN,REC6;等待AN=1
DJNZ36H,REC9;
AJMPREC7;
;SETPLAY16位
;从指定地址放音11100
PLAY:
JNBAN,PLAY;等待AN=1
MOVA,20H;发地址A7-A0
ACALLISDX;
MOVA,21H;发地址A9-A8
SETBACC.7;
SETBACC.6;
SETBACC.5;
CLRACC.4;
CLRACC.3;
ACALLISDX;
SETBSS;关片选
;PLAY8位
;从当前地址放音11110
PLAY1:
CLRLED;LED开指示灯
MOVA,#0F0H;发11110XXXXXXXX
ACALLISDX;发<>
SETBSS;关片选
PLAY2:
JNBSTOP,REC6;STOP=0停止放音
JBINT,PLAY2;无OVFEOM继续放音
SETBLED;关指示灯
ACALLSTOPP;停止当前操作
;检测OVF
CLRSS;开片选
CLRSCLK;时钟SCLK=0
SETBSCLK;时钟SCLK=1
JBMISO,REC6;芯片到未
CLRSCLK;时钟SCLK=0
SETBSS;关片选
ACALLSTOPP;停止当前操作
PLAY3:
JNBSTOP,REC6;中断放音
JBAN,PLAY3;等待AN=0
AJMPPLAY1;顺序放音
;ISD上电<>
UP:
MOVA,#20H;发00100XXXXXXXXXXX
ACALLISDX;
SETBSS;关片选
ACALLYS50;50mS延时
ACALLYS50;50mS延时
RET;
;停止当前操作<>8位
STOPP:
MOVA,#30H;发0X110XXX
ACALLISDX;
SETBSS;关片选
ACALLYS50;50mS延时
ACALLYS50;50mS延时
RET;
;停止当前操作掉电<>8位
DSTOP:
MOVA,#10H;发0X010XXXXXXXXXX
ACALLISDX;
SETBSS;关片选
ACALLYS50;50mS延时
ACALLYS50;50mS延时
RET;
;ISD3300,4003SPI写入程序8位数据在A
ISDX:
CLRSS;开片选
MOVR6,#8;
CLRSCLK;时钟SCLK=0
IS