isd系列语音控制芯片代码实例.doc_第1页
isd系列语音控制芯片代码实例.doc_第2页
isd系列语音控制芯片代码实例.doc_第3页
isd系列语音控制芯片代码实例.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/ISD4004 DRIVER #includemcu-define.h #includedelay.h #includeisd4004.h sbit ISD4XXX_SCLK=P36; sbit ISD4XXX_MISO =P34; sbit ISD4XXX_MOSI =P35; sbit ISD4XXX_SS =P37; /ISD4004 命令码 /* 指令 8位控制码,16位地址码 操作摘 要 POWERUP 00100xxx(xxxxxxxxxxxxxxxx) 上电:等待TPUD后器件可以 工作 SET PLAY 11100xxx(A15A0) 从指令地址开始放音,须后 跟PLAY指令,使放音继续 PLAY 11110xxx(xxxxxxxxxxxxxxx) 从当前地址开始放音(直至 EOM或OVF) SET REC 10110xxx(A15A0) 从指定地址开始录 音,须后跟REC指令,使录音继续 REC 110110(xxxxxxxxxxxxxxx) 从当前地址开始录 音(直至OVF或停止) SET MC 11101xxx(A15A0) 从指定地址开始快 进,须后跟MC指令,使快进继续 MC 11111xxx(xxxxxxxxxxxxxxx) 执行快进,直到 EOM,若再无信息,则进入OVF状态 STOP 0x110xxx(xxxxxxxxxxxxxxx) 停止当前操作 STOP PWRDN 0X01Xxxx(xxxxxxxxxxxxxxx) 停止当前的操作并掉电 RINT 0X110xxx(xxxxxxxxxxxxxxxx) 读状态;OVF和EOM */ #define ISD4XXX_POWER_UP 0x20 #define ISD4XXX_SET_PLAY 0xe0 #define ISD4XXX_PLAY 0xf0 #define ISD4XXX_SET_REC 0xb0 #define ISD4XXX_REC 0xd8 #define ISD4XXX_SET_MC 0xe8 #define ISD4XXX_MC 0xf8 #define ISD4XXX_STOP 0x30 #define ISD4XXX_STOP_PWRDN 0x10 #define ISD4XXX_RINT 0x30 unsigned char isd_spi(ISD_COMMAND * isdcommand) unsigned char i; unsigned long miso; unsigned long mosi=(unsigned long *)isdcommand; ISD4XXX_MISO=1; ISD4XXX_SCLK=0; ISD4XXX_SS=0; miso=0; for (i=0;i24;i+) miso=1; miso |=(unsigned long )ISD4XXX_MISO; if (mosi & 0x800000 =0x1) ISD4XXX_MOSI =1; else ISD4XXX_MOSI = 0; ISD4XXX_SCLK=1; mosi = 1; ISD4XXX_SCLK=0; ISD4XXX_SCLK=1; return (char *)(miso+1); void ISD4XXX_Record(unsigned int address) / 1. power up / 2. TPUD(25ms) *2; / 3. power up; / 4. set record address = 00; / 5. rec command . ISD_COMMAND isd_command; isd_mand_code=ISD4XXX_POWER_UP; / isd__address=0; isd_spi(&isd_command); soft_delay_10ms(3); soft_delay_10ms(3); isd_spi(&isd_command); isd_mand_code=ISD4XXX_SET_REC; isd__address=address; isd_spi(&isd_command); isd_mand_code=ISD4XXX_REC ; / isd__address=0; isd_spi(&isd_command); void ISD4XXX_Play(unsigned int address) / 1. POWER UP / 2. Delay tpuid. / 3. SET PLAY WITH ADDRESS 0; / 4. SEND play command. ISD_COMMAND isd_command; isd_mand_code=ISD4XXX_POWER_UP; / isd__address=0; isd_spi(&isd_command); soft_delay_10ms(3); isd_mand_code=ISD4XXX_SET_PLAY; isd__address=address; isd_spi(&isd_command); isd_mand_code=ISD4XXX_PLAY; / isd__address=0; isd_spi(&isd_command); void ISD4XXX_Stop(void) ISD_COMMAND isd_command; isd_mand_code=ISD4XXX_STOP; isd_spi(&isd_command); void ISD4XXX_PowerOff(void) ISD_COMMAND isd_command; isd_mand_code=0x08; isd_spi(&isd_command); void ISD4XXX_PowerOn(void) ISD_COMMAND isd_command; isd_mand_code=0x04; isd_spi(&isd_command); static code unsigned int address_tab22= 0, 1, 2, 3, 4, 5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论