void song(unchar p)
{
unint temp;
unchar jp;//jp是简谱
// unint i=0,j;
temp=0;
while(1)
{
temp=(p+i);
if(temp==0xff)
{
EA=0;
break;
}
jp=temp/16; //取数的高4位
P1=yinyue[jp];
if(jp!=0)
{
timeh=cuzhi[jp*2];
timel=cuzhi[jp*2+1];
}
else
{
TR1=0;
fm=1;//关蜂鸣器
}
delay(temp%16); //取数的低4位
TR1=0; //唱完一个音停10MS
fm=1;
delay_ms(10);
TR1=1;
i++;
keyboard();
if(number==6)
{
number=0;
fm=1;
EA=0;
while(1)
{
keyboard();
if(number==6)
{ EA=1;
// i=j;
break;
}
}
}
}
fm=1;return;
} //其中number是按键对应的传递数值来实现暂停,可是不知道为什么能实现暂停但是不能再播放