這段是從b站看的代碼,但是編譯時顯error C236: '_delay': different length of parameter lists,不知道該怎么改。
剛開始學(xué)習(xí)單片機,很多地方都不懂,請大家?guī)蛶兔Γ浅8兄x
#include <reg51.h>
sbit key1=P3^0;
sbit key2=P3^1;
unsigned char dat1[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char dat2[8]={0x7e,0xbd,0xdb,0xe7,0xe7,0xdb,0xbd,0x7e};
unsigned char dat3[8]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
unsigned char dat4[8]={0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f};
unsigned int mode=0,stu=0,num=0;
void delay(unsigned int x)
{
while(x)
x--;
}
void delay()
{
unsigned char a,b,c;
for(c=123;c>0;c--)
for(b=116;b>0;b--)
fpr(a=9;a>0,a--);
}
void keyscan()
{
if(key1==0)
{
delay(void);
if(key1==0)
{
mode++;
mode%=4;
num=0;
}
while(!key1);
}
if(key2==0)
{
delay(void);
if(key2==0)
{
stu++;
stu=stu%2;
}
while(!key2);
}
}
void main()
{
while(1)
{
keyscan();
switch(mode)
{
case 0:if(stu){P2=dat1[num];num++;num%=8;}break;
case 1:if(stu){P2=dat2[num];num++;num%=8;}break;
case 2:if(stu){P2=dat3[num];num++;num%=8;}break;
case 3:if(stu){P2=dat4[num];num++;num%=8;}break;
}
delay();
}
}
|