#定義uchar無符號字符
uchar stepd[]={0x01,0x03,0x02,0x06,0x04,0xc0,0x08,0x 09 };
uchar num=0,FX = 0;
sbit key1=p3^0;
sbit key2=p3^1;
sbit key3=p3^2;
無符號整數fcnt,scnt,ft,ST;
void t0isr()中斷1
{
if(ft & gt;0)
{
TH0 =(65536-fcnt)/256;
TL0 =(65536-fcnt)% 256;
ft-;
}
其他
{
TH0 =(65536-fcnt)/256;
TL0 =(65536-fcnt)% 256;
ST-;
}
if(ft = = 0 & amp;& ampST = = 0)TR0 = 0;
P2 = stepd[數字];
if(FX = = 0){ num++;num % = 8;}
if(fx==1)
{
if(num = = 0)num = 7;
else num-;
}
}
主()
{
TMOD = 0x 01;
fcnt = 5000
scnt = 10000;
TH0 =(65536-fcnt)/256;
TL0 =(65536-fcnt)% 256;
TR0 = 1;
ET0 = 1;
EA = 1;
while(1)
{
if(key1==0)
{
while(key 1 = = 0);
TR0 = ~ TR0
ft = 1000;
st = 500
}
if(key2==0)
{
while(key 2 = = 0);
FX = 0;
}
if(key3==0)
{
while(key 3 = = 0);
FX = 1;
}
}
}