




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ISD4000-89c51开发板C程序示例/*/ISD4002-89c51开发板演示例程C51版本*/ 作者:中青世纪 Lell */ 2008.2.27 */*/ 更多ISD4000使用心得请登陆中青世纪论坛 *//bbs*/ */*#include sbit SS = P10; /片选sbit SCLK = P11; /ISD4003时钟sbit MOSI = P12; /数据输入sbit MISO = P13; /数据输出sbit LED = P17; /指示灯sbit ISD_INT= P32; /中断sbit AN = P16; /执行sbit STOP = P15;/复位sbit PR = P14; /PR=1录音? PR=0放音void delay(unsigned int time) /延迟n微秒while(time!=0)time- ;void delayms(unsigned int time)/延迟n毫秒TMOD=0x01;for(time;time0;time-)TH0=0xfc;TL0=0x18;TR0=1;while(TF0!=1);TF0=0;TR0=0;/*/ISD4002 spi串行发送子程序,8位数据/*void spi_send(unsigned char isdx) unsigned char isx_counter;SS=0; /ss=0,打开spi通信端SCLK=0;for(isx_counter=0;isx_counter1;SCLK=1;delay(2); SCLK=0;delay(2);/*/发送stop指令/*void isd_stop(void) delay(10);spi_send(0x30);SS=1;delayms(50);/*/发送上电指令,并延迟50ms/*void isd_pu(void) delay(10);SS=0;spi_send(0x20);SS=1;delayms(50);/*/发送掉电指令,并延迟50ms/*void isd_pd(void)delay(10); spi_send(0x10);SS=1;delayms(50);/*/发送play指令/*void isd_play(void)LED=0;spi_send(0xf0);SS=1;/*/发送rec指令/*void isd_rec(void)LED=0;spi_send(0xb0);SS=1;/*/发送setplay指令/*void isd_setplay(unsigned char adl,unsigned char adh)spi_send(adl); /发送放音起始地址低位adh=adh|0xe0;spi_send(adh); /发送放音起始地址高位SS=1;/*/发送setrec指令/*void isd_setrec(unsigned char adl,unsigned char adh)spi_send(adl); /发送放音起始地址低位adh=adh|0xa0;spi_send(adh); /发送放音起始地址高位SS=1;/*/芯片溢出,LED闪烁提醒停止录音/*void isd_overflow(void)while(AN=0)LED=1;delayms(300);LED=0;delayms(300);/*/检查芯片是否溢出(读OVF,并返回OVF值)/*unsigned char chk_isdovf(void)SS=0;delay(2);SCLK=0;delay(2);SCLK=1;SCLK=0;delay(2);if (MISO=1) SCLK=0;SS =1; /关闭spi通信端isd_stop(); /发送stop指令return 1; /OVF为1,返回1else SCLK=0;SS =1; /关闭spi通信端isd_stop(); /发送stop指令return 0; /OVF为0,返回0/*/主程序/功能:1.录音时,按住AN键,LED点亮开始录音,松开AN即可停止录音/再次按下AN键,LED点亮开始录第二段音,依次类推,直到芯片溢出。/ 按stop键芯片复位/ 2.放音时,按一下AN键,即播放一段语音。 按stop键芯片复位。/*void main(void)unsigned char ovflog;while(1)P0=P1=P2=P3=0xff; /初始化while (AN=1) /等待AN键按下if (AN=0) /按键防抖动delayms(20);isd_pu(); /AN键按下,ISD上电并延迟50msisd_pd();isd_pu();if (PR=1) /如果PR=1则转入录音部分delayms(500); /延迟录音 isd_setrec(0x00,0x00); /发送0x0000h地址的setplay指令do isd_rec();/发送rec指令while(AN=0)/等待录音完毕if (ISD_INT=0) /如果芯片溢出,进行LED闪烁提示,isd_overflow();/如果取消录音(松开AN键)则停止录音,芯片复位 if (ISD_INT=0) break;LED=1; /录音完毕,LED熄灭isd_stop(); /发送停止命令while(AN=1) /如果AN再次按下,开始录制下一段语音if(STOP=0)/如果按下STOP按键,则芯片复位break;if (AN=0)delayms(500);while(AN=0);else /如果PR=0则转入放音部分while(AN=0);isd_setplay(0x00,0x00); /发送setplay指令,从0x0000地址开始放音do isd_play(); /发送放音指令delay(20);while(ISD_INT=1) /等待放音完毕的EOM中断信号;LED=1;isd_stop(); /放音完毕,发送stop指令 if (ovflog=chk_isdovf() /检查芯片是否溢出 ,如溢出则停止放音,芯片复位break;while(AN=1) /等待AN键再次按下if (STOP=0)break;if(AN=0)delayms(20);while(AN=0); / AN键再次按下,播放下一段语音isd_stop();isd_pd();注意:与ISD4002/03不同的是,由于ISD4004芯片的语音地址是16位,在发送带地址指令(如setplay,setrec,setmc)时,需要先发送两个字节的地址信息,再发送一个字节的命令字,ISD4004的程序编写与ISD4002/03的区别,仅此而已。例如,ISD4004的setplay指令程序应为:void isd_setplay(unsigned char adl,unsigned char adh)delayms(1);spi_send(adl); /发送放音起始地址低位delay(2);spi_send(adh);/发送放音起始地址高位delay(2);spi_send(0xe0);/发送setplay指令字节SS=1;本板采用国内最常用的MCS-51语言单片机89C51,与最新的ISD4000系列语音芯片结合,可供用户开发各种最新的智能型数码语音产品。一、 结构板上已装配好:89C51-单片机,8031内核,4K可反复擦写的程序存储器,32条I/O口,5V工作ISD4003-08-语音芯片,音质优异的模拟存储技术,可反复录放,8分钟,可分1200段,SPI接口方式,3V供电LM386-功率放大器,0.5W驱动24C01(选配件)-I2C总线串行存储器。还有驻极体话筒(MIC)、话筒放大器、音量电位器、发光管等部件。 二、 性能参数外接电源电压:5V(稳压)外接喇叭:4-16欧姆,0 .5W工作电流:2530mA ( 录音),5080mA (放音)静态电流:13mA随板
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 景观建设项目质量管理方案
- 2025广东清远市英德市招聘教师222人模拟试卷附答案详解
- 2025福建厦门市集美区灌口镇双岭村职业经理人招聘1人考前自测高频考点模拟试题附答案详解
- 食品加工项目建设工程方案
- 建筑防火技术实施方案
- 自动控制原理课程教学中对学生理想信念的塑造
- 2025安徽岳西县事业单位引进急需紧缺专业人才3人模拟试卷附答案详解(考试直接用)
- 跨学科协作推动校园安全教育全覆盖的实施路径
- R-1-5-Amino-2-2-benzyloxy-1-1-dimethyl-ethyl-6-fluoro-indol-1-yl-3-benzyloxy-propan-2-ol-VX-661-intermediate-生命科学试剂-MCE
- p-Toluic-acid-Standard-生命科学试剂-MCE
- 2025贵州遵义市鑫财投资有限公司招聘工作人员17人考试模拟试题及答案解析
- 2026届海口市重点中学九年级数学第一学期期末达标测试试题含解析
- 胰岛素注射规范与操作指南
- 基于边缘计算的导航算法优化-洞察及研究
- 实施指南(2025)《DA-T 59 - 2017 口述史料采集与管理规范》
- 高一物理力学知识点总结与测试题
- 广东省深圳市罗湖区2025-2026学年高三第一学期开学质量检测语文(含答案)
- 2025年高考真题分类汇编专题06 全面依法治国(全国)(解析版)
- 液氧安全知识培训课件
- 基于PLC的果园灌溉施肥系统设计
- 2025年武汉市中考英语试卷真题(含答案)
评论
0/150
提交评论