C51语音单片机通用开发板电路图和相关程序

上传人:m**** 文档编号:509332342 上传时间:2023-03-27 格式:DOC 页数:23 大小:87.50KB
返回 下载 相关 举报
C51语音单片机通用开发板电路图和相关程序_第1页
第1页 / 共23页
C51语音单片机通用开发板电路图和相关程序_第2页
第2页 / 共23页
C51语音单片机通用开发板电路图和相关程序_第3页
第3页 / 共23页
C51语音单片机通用开发板电路图和相关程序_第4页
第4页 / 共23页
C51语音单片机通用开发板电路图和相关程序_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《C51语音单片机通用开发板电路图和相关程序》由会员分享,可在线阅读,更多相关《C51语音单片机通用开发板电路图和相关程序(23页珍藏版)》请在金锄头文库上搜索。

1、.89C51-ISD4000语音单片机通用开发板本板采用国内最常用的MCS-51语言单片机89C51,与最新的ISD4000系列语音芯片结合,可供用户开发各种最新的智能型数码语音产品。一、结构板上已装配好:89C51-单片机,8031内核,4K可反复擦写的程序存储器,32条I/O口,5V工作ISD4003-08-语音芯片,音质优异的模拟存储技术,可反复录放,8分钟,可分1200段,SPI接口方式,3V供电LM386-功率放大器,0.5W驱动24C01(选配件)-I2C总线串行存储器。还有驻极体话筒(MIC)、话筒放大器、音量电位器、发光管等部件。二、性能参数外接电源电压:5V(稳压)外接喇叭:

2、4-16欧姆,0.5W工作电流:2530mA(录音),5080mA(放音)静态电流:13mA随板提供的演示程序功能:1、录音跳线插在REC一侧是录音状态,按住AN键不放,指示灯亮即可对着板上话筒讲话录音,松键时录音停止并形成一段。再按则录下一段。按STOP键为复位,再录音时又从第一段开始。2、放音跳线插在PLAY一侧是放音状态,按一下AN键即播放一段,一段结束后自动停止放音,再按AN则播放下一段按STOP键为复位,再放音时又从第一段开始。89C51-ISD4000语音电路程序AT89C51单片机89C51单片机12MHz注:本程序为ISD4002、4003的控制程序,ISD4004的程序须加些

3、改动,请注意程序后边的注释。SSEQUP1.0;片选SCLKEQUP1.1;ISD4003时钟MOSIEQUP1.2;数据输入MISOEQUP1.3;数据输出LEDEQUP1.7;指示灯INTEQUINT0;中断ANEQUP1.6;执行STOPEQUP1.5;复位PREQUP1.4;PR=1录音PR=0放音;初始化ORG0000H;AJMPMAIN;MAIN:MOVSP,#10H;MOVP1,#0FFH;MOVP2,#0FFH;MOVP3,#0FFH;MOVP0,#0FFH;CLREA;MAII:SETBLED;关指示灯ACALLDSTOP;ISD掉电MAS0:MOV3AH,#200;MAS1

4、:JBAN,MAS0;等按AN键DJNZ3AH,MAS1;ACALLUP;ISD上电MOV20H,#00H;ISD低位地址MOV21H,#00H;ISD高位地址JBPR,REC;PR=1录音AJMPPLAY;PR=0放音;SETREC16位;从指定地址录音10100REC:MOVA,20H;发地址A7-A0ACALLISDX;MOVA,21H;发地址A9-A8SETBACC.7;CLRACC.6;SETBACC.5;CLRACC.4;CLRACC.3;ACALLISDX;SETBSS;关片选;REC8位;从当前地址录音10110REC1:MOV36H,#10;REC2:ACALLYS50;延时

5、录音DJNZ36H,REC2;CLRLED;开指示灯MOVA,#0B0H;发10110XXXACALLISDX;SETBSS;关片选REC3:MOV35H,#200;REC4:JNBINT,REC7;OVF=0芯片溢出JNBAN,REC3;DJNZ35H,REC4;SETBLED;关指示灯ACALLSTOPP;停止当前操作REC5:JNBSTOP,REC6;中断RESETJBAN,REC5;等待AN=0ACALLSTOPP;停止当前操作AJMPREC1;REC6:CLRSCLK;时钟SCLK=0SETBSS;关片选ACALLSTOPP;停止当前操作AJMPMAII;REC7:SETBLED;关

6、指示灯MOV36H,#15;REC8:ACALLYS50;延时录音JBAN,REC6;等待AN=1DJNZ36H,REC8;CLRLED;MOV36H,#15;REC9:ACALLYS50;延时录音JBAN,REC6;等待AN=1DJNZ36H,REC9;AJMPREC7;SETPLAY16位;从指定地址放音11100PLAY:JNBAN,PLAY;等待AN=1MOVA,20H;发地址A7-A0ACALLISDX;MOVA,21H;发地址A9-A8SETBACC.7;SETBACC.6;SETBACC.5;CLRACC.4;CLRACC.3;ACALLISDX;SETBSS;关片选;PLAY8

7、位;从当前地址放音11110PLAY1:CLRLED;LED开指示灯MOVA,#0F0H;发11110XXXXXXXXACALLISDX;发SETBSS;关片选PLAY2:JNBSTOP,REC6;STOP=0停止放音JBINT,PLAY2;无OVFEOM继续放音SETBLED;关指示灯ACALLSTOPP;停止当前操作;检测OVFCLRSS;开片选CLRSCLK;时钟SCLK=0SETBSCLK;时钟SCLK=1JBMISO,REC6;芯片到未CLRSCLK;时钟SCLK=0SETBSS;关片选ACALLSTOPP;停止当前操作PLAY3:JNBSTOP,REC6;中断放音JBAN,PLAY

8、3;等待AN=0AJMPPLAY1;顺序放音;ISD上电UP:MOVA,#20H;发00100XXXXXXXXXXXACALLISDX;SETBSS;关片选ACALLYS50;50mS延时ACALLYS50;50mS延时RET;停止当前操作8位STOPP:MOVA,#30H;发0X110XXXACALLISDX;SETBSS;关片选ACALLYS50;50mS延时ACALLYS50;50mS延时RET;停止当前操作掉电8位DSTOP:MOVA,#10H;发0X010XXXXXXXXXXACALLISDX;SETBSS;关片选ACALLYS50;50mS延时ACALLYS50;50mS延时RET

9、;ISD3300,4003SPI写入程序8位数据在AISDX:CLRSS;开片选MOVR6,#8;CLRSCLK;时钟SCLK=0ISD1:MOVC,ACC.0;MOVMOSI,C;数据写MOSISETBSCLK;时钟SCLK=1RRA;CLRSCLK;时钟SCLK=0DJNZR6,ISD1;RET;*10mS延时*YS1:MOVTMOD,#01H;MOVTH0,#0D8H;10mS延时初值置入MOVTL0,#0F0H;(65536-X)*1=10MSSETBTR0;65536-(10000/1)=D8F0HJNBTF0,$;CLRTF0;CLRTR0;RET;*50mS延时*YS50:MOV

10、TMOD,#01H;MOVTH0,#3CH;50mS延时初值置入MOVTL0,#0B0H;(65536-X)*1=50MSSETBTR0;65536-(50000/1)JNBTF0,$;CLRTF0;CLRTR0;RET;END;附:ISD4004的程序改动注明:SETREC:;指定地址录音MOV20H,#00H;低八为地址MOV21H,#00H;高八位地址MOV22H,#0a0H;操作码MOVA,20HACALLISDXMOVA,21HACALLISDXMOVA,22HACALLISDXSETBSS指定地址录音(SETPLAY)和指定地址快进(SETMC)的改动与上述相同ISD4000-89c51开发板C程序示例/*/ISD4002-89c51开发板演示例程C51版本*/作者:中青世纪Lell*/2008.2.27*/*/更多ISD4000使用心得请登陆中青世纪论坛*/http:/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号