[单片机课程设计]MCS51与SPI串行接口语音芯片连接.doc
《[单片机课程设计]MCS51与SPI串行接口语音芯片连接.doc》由会员分享,可在线阅读,更多相关《[单片机课程设计]MCS51与SPI串行接口语音芯片连接.doc(28页珍藏版)》请在三一办公上搜索。
1、MCS-51与SPI串行接口语音芯片连接一、实验目的(1) 进一步理解SPI串行总线传输协议。(2) 理解ISD4000系列语音芯片工作原理,放音、录音控制过程。(3) 理解MCS-51与SPI总线外设(如ISD4000系列语音芯片)的硬件连接、读写方式。二、实验设备与器材仿真器及附件、图0-1所示实验电路板各一套。三、实验电路本实验涉仅仅涉及实验板上的U101、U103、U104、U401(ISD4002语音芯片)、U404(集成功率放大器),而与其他元器件无关。接通电源前,将JP103的1-2引脚短路,使ISD4002语音芯片的中断输出端引脚与MCS-51外中断(P3.2)引脚相连。由于多
2、数MCS-51芯片没有内置SPI串行总线接口部件,因此只能用软件模拟SPI总线时序方式读写SPI总线接口器件。四、实验原理(ISD4000系列语音芯片简介)ISD4000系列语音芯片包括ISD4002、ISD4003、ISD4004三个子系列芯片,电源电压为3V,单片录音时间在216分钟之间,音质中上,广泛用于公共汽车语音报站系统、移动及自动应答电话设备、语音复读机等电子产品中。该系列语音芯片采用CMOS工艺,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平Flash ROM存贮器阵列。通过串行通信接口(SPI或Microwire总线协议)与微控制器(如MCS-51芯片
3、)相连,所有操作均由微控制器控制。内部采用多电平直接模拟量存储技术, 每个采样值直接存贮在片内Flash ROM存贮器中,因此能逼真、自然地再现语音、音乐、音调等声响效果,避免了一般固体录音电路因量化和压缩造成的量化噪声和金属声。可选4.0,5.3,6.4,8.0kHz等多个采样频率,采样频率越低,录放时间就越长(但音质会略有下降),片内信息存放在Flash ROM存贮器中,在断电状态下可保存100年(典型值),能反复录音10万次以上。(一) 主要参数ISD4000系列语音芯片主要参数如表13-1所示。表13-1 主要参数型号存储时间(秒)最大段数信息分辩率(毫秒)采样频率(HZ)滤波器带宽(
4、HZ)控制码+地址位长度ISD4002-1201206002008.0K3.4K5+11ISD4002-1801806003005.3k2.3k5+11ISD4002-2402406004004.0k1.7k5+11ISD4003-0424012002008.0K3.4K5+11ISD4003-0636012003005.3K2.3K5+11ISD4003-0848012004004.0K1.7K5+11ISD4004-0848024002008.0K3.4K8+16ISD4004-1696024004004.0K1.7K8+16(二) 封装及引脚排列ISD4000系列语音芯片采用28引脚TS
5、OP、PDIP或SOIC封装方式,其中PDIP或SOIC封装方式引脚排列如图13-1所示。图13-1 PDIP或SOIC封装引脚排列引脚功能:VCCD芯片内部数字电路电源引脚,VSSD芯片内部数字电路地线引脚;VCCA芯片内部模拟电路电源引脚,VSSA芯片内部模拟电路地线引脚。为减小噪声,芯片内部模拟、数字电路具有各自的电源、地线总线,以方便在印制板上实现数字、模拟电路电源和地线分开走线,形成单点接地的布线规则。ANA IN+、ANA IN-分别是录音输入放大器的同相输入端和反相输入端。输入放大器可用单端或差分方式之一驱动。采用单端驱动时,信号由耦合电容输入,最大为32mV(峰峰值)。耦合电容
6、与本端内部的3K串联电阻构成的输入阻抗决定了芯片频带的低端截止频率。采用差分驱动时,最大为16mV(峰峰值)。XCLK外部采样时钟输入端,可选的采样频率如表10所示。一般使用芯片内部采样频率(在出厂前已调校,误差在+1%以内),除非对采样精度要求很高。当不用外部采样时钟信号时, XCLK引脚必须接地。AM CAP自动静噪输入端。当录音信号电平下降到内部设定的某一阈值以下时,自动静噪功能使信号衰弱,这样有助于养活无信号(静音)时的噪声。一般情况系情况下,改引脚对地接1F电容,构成内部信号电平峰值检测电路的一部分。检出的峰值电平与内部设定的阈值作比较,决定自动静噪功能的翻转点。大信号时,自动静噪电
7、路不衰减,静音时衰减6dB。1F电容也影响自动静噪电路对信号幅度的响应速度。当AM CAP引脚接VCCA时,则禁止自动静噪。AUD OUT音频输出,可驱动5K的负载。MOSI命令及数据信息的串行输入端。MIS0状态信息的串行输出端。SCLK串行时钟输入端,由SPI总线主设备(一般为MCU)提供。片选信号输入端,输入,低电平有效。当片选信号无效时,芯片处于待用状态,静态电流典型值为1uA。中断输出端,漏极开路(OD)输出,低电平有效。在放音(包括快进)、录音操作过程中,遇到到段结束(EOM)、存储器末尾(OVF)时,引脚输出低电平并保持,直到SPI总线主设备向ISD芯片写入新的命令。RAC行地址
8、时钟输出端,漏极开路(OD)。每个RAC周期表示ISD存储器的操作进行了一行(ISD4003系列中的存贮器有1200行)。该信号高电平时间为200ms,低电平为25ms。快进模式下,RAC的218.75s是高电平,31.25s为低电平。该端可用于存储管理技术。(三) 控制命令及SPI端口控制寄存器位ISD4000系列语音芯片控制命令如表13-2所示,SPI端口控制寄存器位含义如图13-2所示。表13-2 控制命令指令5位控制码操作摘要POWERUP00100上电:等待TPUD后器件可以工作SET PLAY11100从指定地址开始放音。必须后跟PLAY指令使放音继续PLAY11110从当前地址开
9、始放音(直至EOM或OVF)SET REC10100从指定地址开始录音。必须后跟REC指令录音继续REC10110从当前地址开始录音(直至OVF或停止)SET MC11101从指定地址开始快进。必须后跟MC指令快进继续MC11111执行快进,直到EOM.若再无信息,则进入OVF状态STOP 0X110停止当前操作(C3没有定义)STOP WRDN0X01X停止当前操作并掉电(C3、C0没有定义)RINT0X110读OVF和EOM标志(C3没有定义)图13-2 SPI端口控制寄存器位及含义1. 放音过程(1) 执行上电命令(POWER UP)。(2) 延迟等待上电结束(当采样频率为8KHz时,上
10、电延迟时间约为25mS)。(3) 执行“SET PLAY”命令,设置放音段起始地址。录音、放音段起始地址与每段最短时间及放音长度有关。例如,对ISD4002-120芯片来说,最多有600段(段地址编号为000599),每段最短录音时间为200mS。如果每段记录一个单音,长度为400mS(即每个单音占用两段),则第n个单音对应的段地址为(n2)。(4) 执行“PLAY”命令,从当前地址开始放音,遇到段结束标志EOM或存储器末尾标志OVF时停止放音,同时引脚输出低电平,指示当前段播放结束。当需要播放两段或两段以上时,如果段与段之间间隔很小时,可在上一段播放结束后,延迟一段时间(需通过试听确定延迟时
11、间的长短,一般为数十mS)后再播放下一段。放音过程如图13-3(a)所示。在放音操作过程中,执行“STOP”或“STOP WRDN”命令时,将终止当前放音操作。2. 录音过程(1) 执行上电命令(POWER UP)。(2) 延迟等待上电结束(当采样频率为8KHz时,上电延迟时间TPUD约为25mS)。(3) 再执行上电命令(POWER UP)。(4) 延迟两倍上电等待时间(即延迟2TPUD时间)。(5) 执行“SET REC”命令,设置录音段的起始地址。(6) 执行“REC”命令,从当前地址开始录音,直到出现存储器末尾标志OVF信号。在录音过程中,未录到存储器末尾时,就执行“STOP”或“ST
12、OP WRDN”命令,将终止当前录音操作,并产生EOM标志。因此,可利用这一特性在芯片上录制多段语音信息。可见,录音过程与放音过程相似,只是每次录音操作操作只能录一段,如图13-3(b)所示。图13-3 放音、录音流程(四) SPI总线接口时序及命令格式芯片支持8位、16位命令格式,传输时序如图13-4所示,ISD4000系列语音芯片SPI总线参数如表13-3所示。从ISD4000系列语音芯片SPI总线时序可以看出:其SPI总线时序与SPI总线接口存储器EEPROM 25C01/02/04兼容。在接收控制命令时,先接收LSB(这要求SPI总线控制器先输出LSB);空闲时,SCLK为低电平,在S
13、CLK上升沿锁存器MOSI引脚上的信息。表13-3 ISD4000系列语音芯片SPI总线参数符号参数最小典型最大单位TSSS片选信号建立时间500nsecTSSH片选信号保持时间500nsecTDIS串行输入数据DI建立时间200nsecTDIH串行输入数据DI保持时间200nsecTPD输出延迟500nsecTDF输出延迟到高阻态500nsecTSSmin片选信号高电平时间1secTSCKhiSCLK 高电平时间400nsecTSCKlowSCLK低电平时间400nsecF0SCLK频率1000kHz(a) 传输时序(b) 8位命令格式(c) 16位命令格式图13-4 命令格式(五) 典型应
14、用电路及与MCS-51的连接MCS-51芯片一般没有内置SPI总线部件,可通过软件方式模拟SPI总线操作时序控制ISD4000系列语音芯片的操作,典型连接线路如图13-5所示。图13-5 与MCS-51芯片的典型连接(六) 参考驱动程序根据图13-5连接方式,下面给出了与SPI模拟总线驱动程序、组合播放、从指定段连续播放、单段录音有关的参考程序段,完整程序参阅磁盘文件实验十三(ISDN4000系列语音驱动程序).ASM。MOSI BIT P1.5MISO BIT P1.6SCLK BIT P1.7ISDSS BIT P1.4;片选信号MIC_C BIT P1.3 ;功放电源控制,同时也作放音/
15、录音标志(0-放音、1-录音)ISDBUF DATA 50H ;ISD语音芯片命令缓冲区 ;50H单元存放命令码(C4-C0)及段高3位地址(A10-A8) ;51H单元存放段低8位地址(A7-A0)ISDBUFSP DATA 52H ;播放指针TASK3 DATA 53H ;语音播放状态,b2-b0记录放音或录音状态ISDTIME DATA 54H ;语音播放延迟时间XmtDat DATA 60H ;段缓冲区RECNO EQU 0F0H ;可录音的最小段号;初始化外中断INT0SETB IT0 ;下降沿触发(采用查询方式检测);-从指定段连续播放初始化 CLR MIC_C ;设置放音标志 M
16、OV ISDBUFSP, #0 ;设置播放的起始段号 MOV TASK3, #05H ;启动标志(未上电标志)HERE1: LCALL ISD_RD_A ;调用逐段播放过程 MOV A, TASK3CJNE A, #0, HERE1SJMP $ ;虚拟等待;-段组合播放初始化 ;把待播放的段编号(一次最多可播放16段)装入播放缓冲区内 ;当待播放的段号不足16时,在播放段后放0FFH,作为结束标志 MOV R0, #XmtDat MOV R0, #02h ;初始化语音段缓冲区 INC R0 MOV R0, #01H INC R0 MOV R0, #22hINC R0 CLR MIC_C ;设置
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机课程设计 单片机 课程设计 MCS51 SPI 串行 接口 语音 芯片 连接
链接地址:https://www.31ppt.com/p-4146874.html