请教一下,单片机2个定时器,为什么只能播放1次数组循环?
时间:10-02
整理:3721RD
点击:
uchar a[]={252,252,252,252,253,253};
uchar b[]={68,68,173,68,52,10};
uchar n[]={1,1,2,2,2,4};
sbit BEEP=P3^6;
void main()
{
TMOD=0x21;
EA=1;
ET0=1;
ET1=1;
TR1=1;
TR0=1;
i=0;
t=0;
TH0=a;
TL0=b;
TH1=0x06;
TL1=0x06;
while(1)
{
}
}
void t0(void) interrupt 1 using 0
{
BEEP=~BEEP;
TH0=a;
TL0=b;
}
void t1(void) interrupt 3 using 0
{
t++;
if(t==1000)
{
t=0;
n--;//这俩句去掉可以循环
if(n==0)//
{
TR0=0;
i++;
if(i==6)
{
i=0;
}
TR0=1;
}
TH1=0x06;
TL1=0x06;
}
}
n--;
if(n==0)
这的n应该改为n[i],上传错误。
有没有人帮忙看看。
看过,路过,留给后来人