关于语音芯片yf017

2019-07-15 14:15发布

使用yf017连续播放一段声音失败,播放出来的是乱的,求使用过的大神解答,

#include<reg52.h>
#include<string.h>
#include<stdio.h>
#define uint unsigned int
#define uchar unsigned char
sbit rst1=P1^2;
sbit Da1=P1^1;
sbit busy1=P1^0;  
sbit key1=P1^5;

void delay(uint ms)//延时
{
uint x,y;
for(x=ms;x>0;x--)
  for(y=110;y>0;y--);
}

void music_1(uchar a)//语音控制函数
{
rst1=1;
delay(2);//发送一个复位脉冲
rst1=0;
delay(2);
while(a>0)
{
  Da1=1;
  delay(1);//发送脉冲,确定控制的语音段
  Da1=0;
  delay(1);
  a--;
}
}

void main()
{
  while(1)
{
  
      if(key1==0)
  {
        delay(10);
        if(key1==0)
     {   
       delay(2);
       music_1(25);
     while(busy1==0);
       music_1(22);
     while(busy1==0);
       music_1(11);
     while(busy1==0);
       music_1(13);
     while(busy1==0);
     music_1(3);
                 while(busy1==0);
                 music_1(11);
                 while(busy1==0);
                 music_1(4);
                 while(busy1==0);
                 music_1(14);

      }
   }
}
}
芯片的相关信息可以点以下链接
http://wenku.baidu.com/link?url=GOfMvYOH0e1cx-x8KNos66jnL5SIfPqsCqrpvMNYRWO0eSKqEbUsuJhOvpKHnWdk-OzpMqXcK4dIOYf8W8wm19AQvelAhEM0VorHnDX56cK
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。