keil4编译七十多个错误
#include "stc15f104.h"
sbit k1 = P3^0;
sbit led1=P3^1;
sbit led2=P3^2;
sbit led3=P3^3;
sbit led4=P3^4;
sbit led5=P3^5;
unsigned char ms,flag=0,flag1=0;
void keyscan();
void init()
{
P0M1 = 0; P0M0 = 0; //设置为准双向口
P1M1 = 0; P1M0 = 0; //设置为准双向口
P2M1 = 0; P2M0 = 0; //设置为准双向口
P3M1 = 0; P3M0 = 0; //设置为准双向口
P4M1 = 0; P4M0 = 0; //设置为准双向口
P5M1 = 0; P5M0 = 0; //设置为准双向口
P6M1 = 0; P6M0 = 0; //设置为准双向口
P7M1 = 0; P7M0 = 0; //设置为准双向口
AUXR |= (1<<7); // Timer0 set as 1T mode
TMOD = 0X01; //初始化定时器
TH0 = 0X63; //10ms计时初值
TL0= 0Xc0;
EA = 1; //开总中断
ET0 = 1; //开T0中断
TR0=0;
}
void main(void)
{
init();
while(1)
{
keyscan();
if((flag==1)&&(flag1==0))
{
if(ms==0)
{
led1=0;
}
if(ms==6)
{
led1=1;
}
if(ms==11)
{
led2=0;
}
if(ms==17) led2=1;
if(ms==22) led3=0;
if(ms==28) led3=1;
if(ms==33) led4=0;
if(ms==39)led4=1;
if(ms==45)led5=0;
if(ms==50) {led5=1;TR0=0;ms=0;flag1=1;flag=0;}
}
}
}
//定时器0中断服务程序
void T0_ISR(void) interrupt 1 //定时器0中断服务程序
{
TH0 = 0X63; //10ms计时初值
TL0= 0Xc0;
ms++;
}
void keyscan()
{
if(k1==0)
{
TR0=1;
flag=1;
}
else
{
TR0=0;ms=0;
flag1=0;led1=1;led2=1;led3=1;led4=1;led5=1;flag=0;
}
}
|