基于51单片机录音笔设计报告内容摘要:

SPCR,状态寄存器 SPSR,数据寄存器 SPDR。 外围设备 FLASHRAM、网络控制器、 LCD 显示驱动器、 A/D 转换器和 MCU 等。 SPI总线系统可直接与各个厂家生产的多种标准外围器件直接接口,该接口一般使用4条线:串行时钟线( SCLK)、主机输入 /从机输出数据线 MISO、主机输出 /从机输入数据线 MOSI 和低电平有效的从机选择线 SS(有的 SPI 接口芯片带有中断信号线 INT、有的 SPI 接口芯片没有主机输出 /从机输入数据线 MOSI)。 SPI 接口是在 CPU 和外围低速器件之间进行同步串行数据传输,传输数据为8位,在主器件的移位脉冲下,数据按位传输,高位在前,低位在后,为全 双工通信,数据传输速度总体来说比 I2C 总线要快,速度可达到几 Mbps。 如图 所示,在 SCLK 的下降沿上数据改变,同时一位数据被存入移位寄存器。 12 SPI 接口内部硬件图如图 : 图 SPI接口内部硬件图 图 SPI时序 Master Slave SCLK MOSI MISO SS 图 SPI硬件连接图 13 微机接口 主控单片机主要通过四线( SCLK, MOSI, MISO, /SS) SPI 协议对 ISD1700进行串行通信。 ISD1700 作为从机,几乎所有的操作都可以通过这个 SPI协议来完成。 为了兼容独立按键模式,一些 SPI 命令: PLAY, REC, ERASE, FWD, RESET和 GLOBAL_ERASE 的运行类似于相应的独立按键模式的操作。 另外, SET_PLAY,SET_REC, SET_ERASE 命令允许用户指定录音、放音和擦除的开始和结束地址。 此外,还有一些命令可以访问 APC 寄存器,用来设置芯片模拟输入的方式。 SPI 协议总述 ISD1700 系列的 SPI 串行接口操作遵照以下协议: 1. 一个 SPI 处理开始于 /SS 管脚的下 降沿。 2. 在一个完整的 SPI 指令传输周期, /SS 管脚必须保持低电平。 3. 数据在 SCLK 的上升沿锁存在芯片的 MOSI 管脚,在 SCLK 的下降沿从 MISO管脚输出,并且首先移出低位。 4. SPI 指令操作码包括命令字节,数据字节和地址字节,这决定于 1700的指令类型 5. 当命令字及地址数据输入到 MOSI 管脚时,同时状态寄存器和当前行地址信息从 MISO 管脚移出。 6. 一个 SPI 处理在 /SS 变高后启动。 7. 在完成一个 SPI 命令的操作后,会启动一个中断信息,并且持续保持为低,直到芯片收到 CLR_INT 命 令或者芯片复位。 所以, 在 SPI 命令输入到 ISD1700 前, SPI 端口的状态应该保持如下状态: /SS=HIGH SCLK=HIGH MOSI=LOW 14 SPI 命令总览 一个 SPI 命令总是由第一个命令字节开始。 命令字节中的 bit4 位( LED)是具有特殊用途的。 这个 bit4 位可以控制 LED的输出。 如果使用者想开启这个操作 LED 的功能,那么所有的 SPI 命令字都要将这个 bit4 位置 1。 在 SPI 模式下,存储位置都可以通过行地址很容易地进行访问。 主控单片机可以访问任何行地址,包括存储 SE音效的行地址( 0x000- 0x00F)。 像 SET_PLAY,SET_REC 和 SET_ERASE 这些命令需要一个精确地起始地址和结束地址。 如果开始地址和结束地址相同,那么 ISD1700 将只在这一行进行操作。 SET_ERASE 操作可以精确地擦除在起始地址和结束地址间的所有信息。 SET_REC 操作从起始地址开始录音,并结束于结束地址,并且在结束地址自动加上 EOM 标志。 同理, SET_PLAY操作从起始地址播放语音信息,在结束地址停止播放。 另外, SET_PLAY, SET_REC 和 SET_ERASE 命令有一个先入先出的缓存器,使得 从一个存储块到下一个存储块之间实现无缝转移。 这个先入先出的缓存器只有在相同类型的 SET 命令下才有效。 也就是说 SET_PLAY 在 SET_ERASE 之后将不能利用这个缓存器,并且这是一个错误的命令, SR0中的 COM_ERR 位将被置 1。 当芯片准备好接收第二个 SPI 命令时,在 SR1 中的 RDY 位将置 1。 同样,在操作完成时会输出一个中断。 例如,如果两个连续但带有两对不同地址的 SET_PLAY 命令被正确发送后,此时缓存器装满。 在完成第一个语音信息的播放后,第一个SET_PLAY 操作会遇到一个 EOM,这时不会像一般遇到 EOM时自动 STOP,而是继续执行第二个 SET_PLAY 命令,芯片将播放第二个语音信息。 这个动作将最小化任何两个录音信息之间潜在的停留时间,且使芯片流畅地连接两个独立的信息。 如果循环存储体系处于令人满意的状态,那么可以使用 PLAY, REC, FWD,RESET, ERASE 和 G_ERASE 这些命令,功能类似于 1700 的独立模式中相应的功能。 这些命令将确保在独立模式下操作时储存机构保持一致,但是,音效提示将不同于独立模式。 如果希望在 SPI 模式和独立模式之间转换,注意必须使用 SET_REC和 SET_ERASE 以遵循循 环存储体系。 15 ISD1760 的存储结构 在独立按键模式下,芯片内有一套环形存储结构管理系统来管理录音段的存放。 当芯片读写存储器时会检查是否合法的存储结构,若不是则 LED 会闪 7 下,然后芯片将不接受任何指令除了复位和全部擦除指令。 遇到这种情况需先将芯片成功全部擦除才能复原,这样原来的内容将全部丢失除了提示音。 环形存储结构管理系统管理的地址是 0x10 到末地址, 0x00 至 0x0f 为 SE 的地址。 当地址指针指到末地址后,会自动跳到 0x10。 在此管理系统下录音段之间是连续存放的,但首地址与末 地址之间至少有一个空地址间隔来让系统区分首末地址。 在 SPI 模式下,用户可对任意地址进行操作,但若不按管理系统的方 式存储或擦除录音段,在独立按键模式下将不能操作。 系统的总体设计方案 多功能录音笔的主要功能是实现语音存储与定时播放。 要实现语音存储与定时播放的方法很多,可供选择的器件也很多。 由于单片机等微控制器的出现和数字电路技术的发展,使得现在的语音存储与自动播放变得易于实现。 本设计采用单片机作为微控制器。 选用字长为 8 位的 STC89C52 单片机作为控制器。 目前可以与单片机配合使用的语音芯片有 很多,其中不乏性能十分优越的语音芯片,华邦公司生产的 ISD1760 语音芯片就是它们中的一员。 ISD1760 芯片采用该芯 片提供多项新功能,包括内置专利的多信息管理系统,新信息提示 ,双运作模式(独立 amp。 嵌入式),以及可定制的信息操作指示音效。 芯片内部包含有自动增益控制、麦克风前置扩大器、扬声器驱动线路、振荡器与内存等的全方位整合系统功能。 16 在独立按键模式下,芯片内有一套环形存储结构管理系统来管理录音段的存放。 当芯片读写存储器时会检查是否合法的存储结构,若不是则 LED 会闪 7 下,然后芯片将不接受任何指令除了复位 和全部擦除指令。 遇到这种情况需先将芯片成功全部擦除才能复原,这样原来的内容将全部丢失除了提示音。 环形存储结构管理系统管理的地址是 0x10 到末地址, 0x00 至 0x0f 为 SE 的地址。 当地址指针指到末地址后,会自动跳到 0x10。 在此管理系统下录音段之间是连续存放的,但首地址与末地址之间至少有一个空地址间隔来让系统区分首末地址。 在 SPI 模式下,用户可对任意地址进行操作,但若不按管理系统的方式存储或擦除录音段,在独立按键。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。