智能电话的设计
的芯片,以便能够将要通知的内容先录制下来然后再让系统自动的进行通知。在这个过程中就体现出了对语音芯片的功能要求,首先要能够在线录音,其次就是要能够多次的擦写以便进行录音内容的随时改变。对于这样的要求一般的语音芯片是不能够满足的,现在大多数的语音芯片多是一次性擦写的而且还需要专门的系统进行语音的录制,使用这种芯片对于本系统来说很不方便而且也是不现实的。这就需要使用一些专门的语音芯片来完成系统所需要的功能。
2.1 ISD4002语音芯片的介绍
ISD4002是美国ISD公司制造的一种新款语音芯片。与ISD其它系列语音产品不同的是,ISD4002是一种微控制器“从”设备,而“主”控制器可以是内置有SPI兼容接口的微控制器,也可以用I/O口仿真SPI通信协议。ISD4002系列工作电压为 3V,单片录放时间为2~4分钟,音质好,适用于移动电话及其它便携式电子产品中。该芯片采用CMOS技术,内含振荡器、抗混叠滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。芯片的所有操作必须由微控制器控制,操作命令可通过串行通信接口送入。ISD4004采用多电平直接模拟量存储技术,每个采样值直接存贮在片内闪烁存贮器中,因此能非常真实、自然地再现语音、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。采样频率可为4.0、5.3、6.4、8.0kHz,频率越低,录放时间越长,音质则有所下降,片内信息存于闪烁存贮器中,可在断电情况下保存100年(典型值),反复录音10万次。ISD4002的管脚图如图4所示。
图4 ISD4002管脚图
各个管脚的功能描述如下:
电源(VCCA、VCCD):为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上。模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。
地线(VSSA、VSSD):芯片内部的模拟和数字电路也使用不同的地线。
同相模拟输人(ANAIN+):录音信号的同相输入端。输入放大器可用单端或差分驱动。单端输入时,信号由耦合电容输入,最大幅度为峰峰值32mV,耦合电容和本端的3K电阻输
- 6 -
商丘科技职业学院毕业论文(设计)
人阻抗决定了芯片频带的低端截止频率。差分驱动时,信号最大幅度为峰峰值16mV。
反相模拟输入(ANAIN-):差分驱动时,为录音信号的反相输入端。信号通过耦合电容输入,最大幅度为峰峰值16mV。
音频输出(AUDOUT):提供音频输出,可驱动5K的负载。
片选(SS):此端为低,即向该ISD4002芯片发送指令,两条指令之间为高电平。 串行输入(MOSI):此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供ISD输入。
串行输出(MISO):ISD的串行输出端。ISD未选中时,本端呈高阻态。
串行时钟(SCLK):ISD的时钟输入端,由主控制器产生用于同步MOSI和MISO的数据传输。数据在SCLK上升沿锁存到ISD,在下降沿移出ISD。
中断(INT):本端为漏极开路输出。ISD在任何操作(包括快进)中检测到EOM或OVF时,本端变低并保持。中断状态在下一个SPI周期开始时清除。中断状态也可用RINT指令读取。
OVF标志用来指示ISD的录、放操作已到达存储器的末尾。EOM是只在放音中检测到内部的EOM标志时此状态位才置1。
行地址时钟(RAC):漏极开路输出。每个RAC周期表示ISD存储器的操作进行了一行ISD4002系列中的存贮器共1200行,该端可用于存储管理技术。 2.2 ISD4002语音芯片
对ISD的任何操作都是要通过控制器给其发送相应的命令来实现的,控制器要想和ISD互传数据就必须遵循ISD的通信协议。ISD采用的是的SPI通信协议。
SPI协议是一个同步串行数据传输协议,协议假定微控制器的SPI移位寄存器在SCLK的下降沿动作。ISD4002工作于SPI工作模式,因此对于ISD4002而言,在时钟上升沿锁存MOSI引脚的数据,在下降沿将数据送至MISO引脚。
通讯协议的具体内容如下:(1)所有串行数据传输开始于SS下降沿。(2)SS在数据传输期间必须保持低电平,在两条指令之间则保持高电平。(3)数据在时钟上升沿移入,在下降沿移出。(4)SS变低时,输入指令和地址后,ISD才能开始录放操作。(5)指令格式是5位控制码加11位地址码。(6)ISD的任何操作(含快进)如果遇到EOM(信息结束标志)或OVF(溢出)则产生一个中断,该中断状态在下一个SPI周期开始时被清除。(7)使用“读”指令使中断状态位移出ISD的MISO引脚时,控制及地址数据也应同步从MOSI端移入。因此要注意移入的数据是否与器件当前进行的操作兼容。(8)所有操作在运行位(RUN)置“1”时开始,置“0”时结束。(9)所有指令都在SS上升沿开始执行[5]。上面是对SPI协议的整体描述,SPI的端口控制位如图5所示。SPI控制寄存器的功能描述如表3所示。由SPI控制存储器功能表可以非常清楚地了解其端口控制位的具体内容,再配合其指令表就可以完成对ISD4002的操作,以完成录放音操作。ISD4002的指令表如表4所示。但是在发送指令是需要注意的是:在发送指令时在两个指令之间SS必须保持高电平这一点
- 7 -
智能电话的设计
在使用中很关键。对于向ISD发送的任何信号数据都要严格的按照其通信协议来进行,协议就是不同设备之间进行通信的桥梁。
MISOOVFEOMP0P1P2P3P4P5P6P7P8P9×000MOSIC4C3C2C1C0×A9A8A7A6A5A4A3A2A1A0图5 SPI端
口控制位图
表3 SPI控制寄存器功能表 位 C4 C3 C2 C1 C0 指令 POWERUP SET PLAY PLAY SET REC REC SET MC MC STOP STOP WRDN RINT 名称 RUN P/R PU IAB MC P9-P0 A9-A0 值 1 0 1 0 1 0 1 0 1 0 功能 开始 停止 放音 录音 上电 掉电 忽略输入地址寄存器的内容 使用输入地址寄存器的内容 允许快进 禁止快进 行指针寄存器输出 输入地址寄存器 操作摘要 上电,等待TPUD后器件可以工作 从指定地址开始放音必须后跟PLAY指令使放音继续 从当前地址开始放音(直至EOM或OVF) 从指定地址开始录音,必须后跟REC指令录音继续 从当前地址开始录音(直至OVF或停止) 从指定地址开始快进,必须后跟MC指令快进继续 执行快进,直到EOM若再无信息则进入OVF状态 停止当前操作 停止当前操作并掉电 读状态:OVF和EOM 表4 ISD4002指令表 5位控制码<11位地址> 00100
从00地址开始放音的操作顺序是:1、发送POWERUP命令2、等待TPUD时间3、发送地址为00的SET PLAY命令4、发送PLAY命令。
从00地址开始录音的操作顺序是:1、发送POWERUP命令2、等待TPUD时间3、发送POWERUP命令4、等待2倍的TPUD时间5、发送地址为00的SET REC命令6、发送REC命令
[7]
。
- 8 -
商丘科技职业学院毕业论文(设计)
2.3 语音单元硬件电路
主控器通过I/O口和ISD进行通信,通过发送给ISD相应的命令来完成语音的录制和播放。语音的输入采用一个麦克风加一个前级放大电路组成,放大后输入到芯片的内部。输出部分采用一个专门的音频功放芯片LM386来实现语音输出的功率放大。ISD4002的硬件连接电路如图6所示。
VCC89C2051P10P11P12P13P14P15P16P17P321213141516171819612328SSMOSIMISOSCLKISD4002VCCDVCCA2718242517162614C4C131μFR5RACINTIN+IN-XCLKAM CAPVSSDVSSAVSSAVSSA4231211C10.1μFC20.1μFC322μFC5AUD OUT131μFR91.2K0.1μF10KRW1V1R410K1234R81KC610μFLM3868765C110.05μF0.1μFVCCR21KMICC9C8R7470K10KC10CAINCAIN-INPUTBYP+INPUTVSGNDVOUTR110ΩC7C12输出250μFR610KR3220Ω0.1μF10μF
图6 ISD4002的硬件连接电路
3 外部存储单元
系统要实现自动拨号进行电话通知就必须要有一个用来存储电话号码的器件,将要通知人员的电话号码事先记录起来作为电话通知的依据。考虑到使用的实用性设计中使用了一种掉电存储器,因为在实际的使用中要通知的对象一般是不会变的或者变化很小的,这样使用掉电存储器进行电话号码的存储就不会因为系统掉电而需要重新对设定的电话号码进行输入。当然,当我们想要重新更换通知人员的名单时我们也是可以通过软件很方便地进行任意的删除和增加的。设计中使用的掉电存储器是具有I2C接口的存储芯片24C32。 3.1 掉电存储器24C32介绍
该存储器有4K的存储空间,采用I2C协议和单片机之间进行数据传输。I2C总线上允许挂接多从机,采用发送不同的地址信息和严格的时序信号进行主机和从机之间的数据传输。具有I2C协议的从机其地址端都是可编程的,通过接地或接高电平来形成不同的地址,如果总线上只有一个从机一般都是将地址端全部接地,对于24C32芯片其可编程的地址端有四
- 9 -
智能电话的设计
位,高四位为固定的地址编号为1010,低四位中前三位为可编程地址端最低位为读写控制位,0表示写操作,1表示读操作。当要对器件进行读写操作时,要严格按照器件的读写时序图进行数据传送才能正确的读出或写入数据[11]。其管脚接线图如图7所示,器件地址位如表5所示。
VCCR1R25.1K5.1K24C321234A0VDDA1WPA2SCLVSSSDA8765 图7 24C32外围接线图 表5 24C32器件地址位 1 0 1 0 A1 A2 A3 R/W 器件上SDA为串行数据/地址端,SCL为串行时钟端,A0、A1、A2为器件地址输入端,器件地址就是通过它们的不同连接来形成不同的器件地址的,SP为写保护端如果SP接高电平则器件内所有内容都被写保护只能读不能写,当WP端悬空或接地时允许器件进行正常的读写操作。使用I2C协议传送数据是有协议定义的:(1)只有在总线空闲时才允许启动数据传输。(2)在数据传送过程中,当时钟线为高电平时数据线必须保持稳定状态,不允许有跳变。时钟线为高电平时,数据线上的任何电平变化都被看作是总线的起始或停止信号。时钟线维持高电平期间,数据线电平由高到低的跳变为I2C的起始信号,由低到高为停止信号。
3.2 掉电存储器24C32读写操作
数据的读写要严格按照器件的时序图进行,写操作分为两种情况:(1)字节写(2)页写,读操作分为三种情况(1)立即地址读(2)选择性读(3)连续读。
在字节写模式下主器件发送起始信号和从器件地址信息给从器件,从器件在收到后发出应答信号表明已收到信号,从器件发出应答信号后,主器件再发出24C32的字节地址,主器件在收到从器件的又一应答信号后再发送数据到被寻址单元,24C32再次应答,在收到主器件发出的停止信号后开始内部数据擦写,在24C32擦写过程中不再应答主器件的任何请求。字节写的时序图如图8所示。
- 10 -
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库智能电话的设计(2)在线全文阅读。
相关推荐: