21,616
社区成员




#include <reg51.h>
unsigned char *sl;
unsigned char *sh;
void init()//初始化函数
{
TMOD=0x01;
TH0=0;
TL0=0; //初始值的设置
EA=1;//打开全局中断
ET0=1;//打开T0中断
TR0=1;
}
void delayms (unsigned int a)
{
unsigned int i,j;
for(i=0;i<a;i++)
for(j=0;j<124;j++);
}
void main()
{
int m;
for(m=0;m<5;m++)//-------------------------------------------------------预计是想跳到这,也就是这个灯会亮两次,然而并没有
{P0=0x08;delayms(500);}
P0=0x00;delayms(500);
init();
for(m=0;m<5;m++)
{P0=0x80;delayms(500);}
while(1){P0=0x0f;}
}
void T0time() interrupt 1
{
sh=(unsigned char *)SP;
sl=sh-1;
*sh=0x08;
*sl=0x55;
TH0=0;
TL0=0;
}