#include <stc15f2k60s2.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar dd[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
void hc573(char n)
{
switch(n)
{
case 4: P2=(P2&0x1f)|0x80;break;//LED
case 5: P2=(P2&0x1f)|0xa0;break;//蜂鸣器
}
}
void cleall()
{
hc573(4);//关闭LED
P0=0xff;
P2&=0x1f;
hc573(5);//关闭蜂鸣器
P0=0x00;
P2&=0x1f;
}
void Delay10ms() //@11.0592MHz
{
unsigned char i, j;
i = 108;
j = 145;
do
{
while (--j);
} while (--i);
}
void Delay50ms() //@11.0592MHz
{
unsigned char i, j, k;
_nop_();
_nop_();
i = 3;
j = 26;
k = 223;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void led()
{
uchar i;
// hc573(4);
// P0=0xfe;
// Delay10ms();Delay10ms();Delay10ms();
//
// hc573(4);
// P0=0xff;
// Delay10ms();Delay10ms();Delay10ms();
for(i=0;i<8;i++)
{
hc573(4);
P0=dd[i];
Delay50ms();
}
for(i=8;i>0;i--)
{
hc573(4);
P0=dd[i];
Delay50ms();
}
}
void main()
{
cleall();
while(1)
{
led();
}
}