ISD1700独立模式录音正常,SPI模式为何录音时没有声音?

2024-12-14 16:17:38
推荐回答(2个)
回答1:

中青世纪
目前, WINBOND 公司已经通告各大代理商, ISD1420 和 ISD2500 系列芯片已经宣布停产,各大代理商已经不接任何关于 ISD1420 的定单,所以原装 ISD1420P/S/SI 均已全线断货;目前市场中 ISD1420 的存货均为国内封装,即 OEM 产品,有 DIP , SOP , COB 三种封装形式,其性能和原装(菲律宾或台湾省封装)相当,但随着 ISD1420 及 2500 系列裸片的停产,国内封装的芯片也即将在市场中消失。由于 ISD1420 与 2500 系列芯片在使用上及即将面临的市场状况基本相同,所以本文仅以 1420 为例进行阐述,但同样适用于 2500 系列芯片。
随着 ISD1420 系列芯片的停产,原有的,以及正在研发中的以 1420 系列芯片为核心的录放电路产品,必然面临着产品转型的问题。那么,有没有一种芯片可以和 1420 系列完全兼容呢?答案是否定的, WINBOND 公司新推出的 1600 系列和 1700 系列,与 1420 的控制模式并不相同。只是在录放音时间上,涵盖了 1420 和 2500 系列芯片的录放音秒数。 1600 系列芯片是单段录放芯片,与现在的 1820 芯片类似,由于操作比较简单, 应用面很窄,就不过多赘述。而 1700 系列则是多段可录放的芯片,目前来看, WINBOND 公司是想用 1700 系列来代替 1420 、 2500 、 4000 全系列的语音芯片, 1700 系列芯片的录放时间覆盖了 20 秒到 960 秒,控制方式上也把手动控制模式和 SPI 串行控制模式结合一体。本文的主旨就是简要介绍一下如何使用 1700 在功能上代替 1420 ,给大家一个直观 映像——其实用 1700 进行产品转型并不困难。
与 1420 用并行地址口线控制不同, 1700 系列是通过 SPI 协议来对芯片进行精确的操控。通过 SPI 协议可以明显节省单片机的控制口线,方便设计者规划线路板。另外,如果您觉得产品中加入单片机太麻烦,那么您可以选择使用 1700 系列的按键模式,该模式通过按键即可对 1700 系列进行录音,放音,快进,擦除,复位,调整音量等几乎所有的功能。
1700 的按键模式 :
用过 1420 的朋友,应该知道该芯片有两种控制模式:一种是地址模式,另一种是操作模式。地址模式是通过改变并行地址线来输送语音的起始地址,达到多段录放音的功能。而操作模式是通过一些管脚定义来对芯片进行录放操作。
而 1420 的地址模式必须要精确计算录音时间与地址单元的换算,才能确定每段语音的起始地址,除非使用我公司生产的 ISD1425 高级语音编程拷贝机 进行自动分段录音并将地址读出,否则使用起来还是很麻烦的。而操作模式虽然可以不用担心语音地址的问题,但在多段录放上的操作略显繁琐,完成一个功能要进行多个管脚的操作,使用起来不是很方便。
相对 1420 的地址模式和操作模式, 1700 也有两种控制方式:独立按键模式和 SPI 接口控制模式。我们可以把 1700 的按键模式看作是 1420 系列的操作模式。同样是用对管脚的定义来进行操控。在介绍之前,让我们先来看一下 1700 的电路图。
图中 /REC , /PLAY , /ERASE , /FWD , /VOL , /RESET , /FT 管脚分别对应的功能定义是:录音,放音,擦除,快进,音量控制,复位,直通功能。这些管脚均可用按键对其控制,其中擦除,音量控制等操作与本文关系不大,就不在这里赘述,有兴趣的朋友可以去中青公司网站 了解相关内容。
/REC 管脚是低有效, 电平变低后开始录音,直到电平拉高或者芯片录满时结束。录音结束后,录音指针自动移向下一个有效地址。而放音指针则指向刚刚录完的那段语音地址
/PLAY 管脚的操作有两种模式,分别是边沿触发和电平触发,都由 PLAY 管脚触发。当 /PLAY 管脚电平变低便开始播放当前段的语音,并在遇到 EOM 标志后自动停止。放音结束后,播放指针停留在刚播放的语音起始地址处,当管脚电平再次拉低时会重新播放刚才的语音。如果在放音期间点按放音键会停止放音;如果一直按住放音键,使 /PLAY 管脚电平持续为低,那么会将芯片内所有语音信息播放出来,并且循环播放直到松开按键将 PLAY 管脚电平拉高。
/FWD 管脚拉低,会启动快进操作。快进操作用来将播放指针移向下一段语音信息。当播放指针到达最后一段语音处时,再次快进,指针会返回到第一段语音。该管脚还要结合芯片当时的状态来决定快进的效果:
A)?如果芯片在掉电状态并且当前播放指针的位置不在最后一段,那么指针 会前进一段,到达下一段
语音处?
B)?如果芯片在掉电状态并且当前播放指针的位置在最后一段,那么指针会返回到第一段语音处。
C)?如果芯片正在播放一段语音(非最后一段),那么此时放音停止,播放指针前进到下一段,紧接着播放新的语音。
D)?如果芯片正在播放最一段语音,那么此时,放音停止,播放指针返回到第一段语音,紧接着播放第一段语音?
/RESET 管脚拉低后,芯片复位,录、放音指针到最后一段语音信息处。
由以上介绍可以看出, 1700 系列按键模式来控制多段语音的操作,其实就是在控制录、放音指针。很像 1420 操作模式的连续地址录放功能,和信息快速检索功能。
需要注意的是,给芯片 /RESET 管脚低电平使其复位后,放音指针和录音指针在最后一段语音信息处,比如说芯片中录入 3 段语音,复位后 , 按 PLAY 键后会播放第 3 段语音,而按 REC 键则录制新的第 4 段语音。这种设计区别于以往 ISD 芯片复位后地址指针在第一段语音信息处,这是出于保护芯片录音内容考虑的。因为根据经验,在 2560 系列, 4000 系列芯片中,都有过芯片上电丢失第一段语音的现象。第一段语音一旦丢失,补录会非常麻烦,必须精确掌握录音时间,否则很容易覆盖掉后面的语音内容。而如果复位或上电后语音地址在最后一段,那么即使语音丢失,直接录音就可以,而不用担心覆盖住原先的语音内容。
当然,如果您想用单片机控制,又觉得 SPI 协议太复杂,那完全可以将单片机口线接到 1700 系列按键模式的控制管脚,这些管脚都是低有效,只要通过单片机口线给出低脉冲,即可对芯片进行操控。需要注意的是, /RESEC 管脚的低电平至少需要保持 1 μsec 。
那么,综上所述,通过控制 /FWD 管脚来选段,控制 /REC 、 /PLAY 管脚进行录、放操作,即可轻松实现多段录、放语音的功能。实际在控制上要比 1420 和 2560 还要简单,并且功能上更加强大,更加人性化
1700 的 SPI 控制模式
1700 芯片的 SPI 控制模式相对 4000 系列芯片功能更为强大,但相对来说,使用也较复杂一些, 1700 提供了多达 23 条控制指令,并且控制字最多可达 6 字节。这些控制命令可以对 1700 精确的控制,甚至可以精确到一个存储单元。 1700 内部有各种状态寄存器,可以通过 MISO 管脚读出芯片当时的状态。
1700 SPI 模式,只需 4 根口线即可对 1700 进行操控,极大节约了单片机口线。由于 SPI 控制操作与 1420 区别较大,不是本文重点,就不过多赘述。有兴趣的朋友可以上中青公司的技术论坛上( )一起讨论研究。今后几天本网站会陆续贴出关于 1700 系列 SPI 控制模式的介绍,敬请关注!
也可以到论坛里我们一起讨论

回答2:

你看看你写的那个SPI录音程序吧,既然已经可以用独立模式录音了,那必然硬件连接没有问题。注意录音上电延时时间。