找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2026|回复: 4
收起左侧

error C129: missing ';' before 'i'.单片机可编程作息时间控制器程序,编译错误

[复制链接]
ID:655985 发表于 2020-6-13 21:07 | 显示全部楼层 |阅读模式
#include<reg52.h>
typedef unsigned int u8;
typedef unsigned char u16;
Uint i,miao,fen,fen1,fen2,fen3,fen4,shi,shi1,shi2,shi3,shi4,flag1,flag2,flag3,flag4,flag5,aa,K1num,K2num,K3num,K4num,N;
uchar code table2[]="  TIME   ";
uchar code Alarm_0[]=" GBDS    ";
uchar code Alarm_1[]=" SKDS    ";
uchar code Alarm_2[]=" XKDS    ";
uchar code Alarm_3[]=" DKDS    ";        
uchar code Alarm_00[]="   GB    ";
uchar code Alarm_11[]="   SK    ";
uchar code Alarm_22[]="   XK    ";
uchar code Alarm_33[]="   DK    ";        
uchar code deng[]="    LIGHTING    ";
sbit K1=P1^0;        
sbit K2=P1^1;
sbit K3=P1^2;
sbit K4=P1^3;
sbit rs=P2^0;
sbit rw=P2^1;         
sbit lcden=P2^2;
sbit LED2=P2^3;        
sbit led=P2^4;  
sbit beep=P2^5;               
void delay(uint z)        
{uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--)        ;        }
void write_com(uchar com)
{rs=0;
rw=0;
lcden=0;
P3=com;
delay(5);
lcden=1;
delay(5);
lcden=0;        }
void write_date(uchar date)
{ rs=1;
rw=0;
lcden=0;
P3=date;
delay(5);
lcden=1;
delay(5);
lcden=0;        }
void write_sfm(uchar add,uchar date)        
{uchar shi,ge;
shi=date/10;
ge=date%10;
write_com(0x80+0x40+add);
write_date(0x30+shi);
write_date(0x30+ge);}
void init()               
{uint num;        
aa=0;               
K1num=0;        
K2num=0;        
K3num=0;        
K4num=0;  
flag1=1;        
flag2=1;
flag3=1;
flag4=1;
flag5=1;
led=1;           
LED2=0;               
rw=0;                 
N=100;               
miao=0;               
fen=0;
shi=7;
fen1=6;        
shi1=7;
fen2=8;               
shi2=7;
fen3=10;               
shi3=7;
fen4=12;               
shi4=7;
beep=0;               
lcden=0;        
write_com(0x38);        
write_com(0x0c);
write_com(0x06);        
write_com(0x01);
write_com(0x80);        
for(num=0;num<15;num++)                  
{ write_date(table[num]);delay(10);        }
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');
write_sfm(12,fen);
write_sfm(9,shi);
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;        
ET0=1;        
TR0=1;        }
void xianshi()         
{write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(table2[ i]);
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');
write_sfm(12,fen);        
write_sfm(9,shi);  }
void time()               
{if(        (K1num==0)&&(flag3==1) )
{write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(table2[ i]);        }                          
if(K1==0)
{delay(5);
flag5=1;
if(K1==0&&K1num==0)
{K1num=1;        
while(!K1)        
if(K1num==1)
{ TR0=0;               
write_com(0x0f);        
write_com(0x80+0x40+13);}        }        }
if(K1==0&&K1num==1)               
{ delay(5);
if(K1==0)
{write_com(0x80+0x40+10);        
K1num=1;        
while(!K1);
shi++;
if(shi==24) shi=0;        
write_sfm(9,shi);        
write_com(0x80+0x40+10);}        }               
if(K2==0&&K1num==1)               
{delay(5);
if(K2==0)
{write_com(0x80+0x40+13);               
K1num=1;
while(!K2);
fen++;         
if(fen==60)        fen=0;
write_sfm(12,fen);        
write_com(0x80+0x40+13);        }        }
if(K1num==1)
{        if(K3==0)               
{delay(5);
if(K3==0)
{        flag5=0;
K1num=0;
while(!K3);
write_com(0x0c);        
TR0=1;           
flag1=1;
flag1=1;
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');        }        }        }}
void guangbo()
{if(K3num==0)
{write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_00[ i]);        }
if(K3==0&&K3num==0)        
{delay(5);        
if(K3==0)
{        flag1=0;
write_com(0x80+0x40+13);               
while(!K3);
K3num=1;
write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_0[ i]);
write_sfm(12,fen1);        
write_sfm(9,shi1);
write_com(0x0f);        
write_com(0x80+0x40+13);        
}        }           
if(K2==0&&K3num==0)
{        delay(5);
if(K2==0)
{        write_sfm(12,fen1);        
write_sfm(9,shi1);
while(!K2);        
write_sfm(12,fen);
write_sfm(9,shi);}        }
if(K1==0&&K3num==1)               
{delay(5);
if(K1==0)
{        write_com(0x80+0x40+10);        
K3num=1;
while(!K1);
shi1++;
if(shi2==24)        
shi1=0;
write_sfm(9,shi1);        
write_com(0x80+0x40+10);        
}        }        
if(K2==0&&K3num==1)
{        delay(5);
if(K2==0)
{        write_com(0x80+0x40+13);               
K3num=1;
while(!K2);
fen1++;
if(fen1==60)        
fen1=0;
write_sfm(12,fen1);
write_com(0x80+0x40+13);        
}        }
if(K3num==1)
{        if(K3==0)               
{        delay(5);
if(K3==0)
{        K1num=0;
K3num=0;
while(!K3);
write_com(0x0c);               
flag1=1;        
write_sfm(12,fen);
write_sfm(9,shi);
write_com(0x80+0x40+11);
  write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');}}        } }
void shangke()         
{if(        K3num==0)
{write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_11[ i]);        }        
if(K3==0&&K3num==0)               
{        delay(5);        
if(K3==0)
{        flag1=0;
write_com(0x80+0x40+13);               
while(!K3);
K3num=1;
write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_1[ i]);
write_sfm(12,fen2);        
write_sfm(9,shi2);
write_com(0x0f);               
write_com(0x80+0x40+13);        
}   }         
if(K2==0&&K3num==0)        
{        delay(5);
if(K2==0)
{        write_sfm(12,fen2);        
write_sfm(9,shi2);
while(!K2);        
write_sfm(12,fen);        
write_sfm(9,shi);        }        }
if(K1==0&&K3num==1)               
{        delay(5);
if(K1==0)
{        write_com(0x80+0x40+10);        
K3num=1;
while(!K1);
shi2++;         
if(shi2==24)        
shi1=0;
write_sfm(9,shi2);        
write_com(0x80+0x40+10);        
}        }        
if(K2==0&&K3num==1)               
{        delay(5);
if(K2==0)
{        write_com(0x80+0x40+13);               
K3num=1;
while(!K2);
fen2++;
if(fen1==60)
fen1=0;
write_sfm(12,fen2);        
write_com(0x80+0x40+13);        
}        }
if(K3num==1)        
{        if(K3==0)               
{        delay(5);
if(K3==0)
{   K1num=0;
K3num=0;
while(!K3);
write_com(0x0c);               
flag1=1;        
write_sfm(12,fen);
write_sfm(9,shi);
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');}}} }   
void xiake()         
{        if(        K3num==0)
{        write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_22[ i]);        }                 
if(K3==0&&K3num==0)               
{delay(5);        
if(K3==0)
{        flag1=0;
write_com(0x80+0x40+13);        
while(!K3);
K3num=1;
write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_2[ i]);
write_sfm(12,fen3);        
write_sfm(9,shi3);
write_com(0x0f);        
write_com(0x80+0x40+13);
}}
if(K2==0&&K3num==0)        
{delay(5);
if(K2==0)
{        write_sfm(12,fen3);        
write_sfm(9,shi3);
while(!K2);        
write_sfm(12,fen);        
write_sfm(9,shi);}        }
if(K1==0&&K3num==1)               
{        delay(5);
        if(K1==0)
{        write_com(0x80+0x40+10);        
K3num=1;
while(!K1);
shi3++;         
if(shi3==24)        
shi1=0;
write_sfm(9,shi3);        
write_com(0x80+0x40+10);        
}        }
if(K2==0&&K3num==1)               
{        delay(5);
if(K2==0)
{        write_com(0x80+0x40+13);               
K3num=1;
while(!K2);
fen3++;
if(fen1==60)        
fen1=0;
write_sfm(12,fen3);
write_com(0x80+0x40+13);        }        }        
if(K3num==1)        
{        if(K3==0)               
{   delay(5);
if(K3==0)
{        K1num=0;
K3num=0;
while(!K3);
write_com(0x0c);               
flag1=1;
write_sfm(12,fen);
write_sfm(9,shi);
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');}}} }
void dengkong()          {if(K3num==0)
{write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_33[ i]);        }        
if(K3==0&&K3num==0)               
{delay(5);        
if(K3==0)
{flag1=0;
write_com(0x80+0x40+13);               
while(!K3);
K3num=1;
write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_3[ i]);
write_sfm(12,fen4);        
write_sfm(9,shi4);
write_com(0x0f);        
write_com(0x80+0x40+13);        
}        }
if(K2==0&&K3num==0)        
{delay(5);
if(K2==0)
{write_sfm(12,fen4);        
write_sfm(9,shi4);
while(!K2);        
write_sfm(12,fen);        
write_sfm(9,shi);
}        }
if(K1==0&&K3num==1)
{delay(5);
if(K1==0)
{write_com(0x80+0x40+10);        
K3num=1;
while(!K1);
shi4++;         
if(shi4==24)        
shi1=0;
write_sfm(9,shi4);        
write_com(0x80+0x40+10);        
}        }
if(K2==0&&K3num==1)               
{        delay(5);
if(K2==0)
{        write_com(0x80+0x40+13);               
K3num=1;
while(!K2);
fen4++;
if(fen1==60)        
fen1=0;
write_sfm(12,fen4);        
write_com(0x80+0x40+13);
}        }
if(K3num==1)。
{        if(K3==0)               
{        delay(5);
if(K3==0)
{K1num=0;
K3num=0;
while(!K3);
write_com(0x0c);               
flag1=1;//flag=1.
write_sfm(12,fen);
write_sfm(9,shi);
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');}}        }}
void clock()
{if((((fen==fen1)&&(shi==shi1))||((fen==fen2)&&(shi==shi2))||((fen==fen3)&&(shi==shi3))||((fen==fen4)&&(shi==shi4)))&&(flag2==1))        
{beep=1;               
flag5=0;
flag3=0;        
delay(100);        
beep=0;
delay(100);
beep=1;
delay(100);
beep=0;
delay(100);
beep=1;
delay(100);
beep=0;
delay(300);        }
else
{beep=0;}
if(((fen!=fen1)&&(fen!=fen2)&&(fen!=fen3)&&(fen!=fen4))&&(flag4==0)&&(flag5==0)        )
{ xianshi();  }
if((fen==fen1)&&(shi==shi1)&&(flag2==1))
{LED2=1;                                    
write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_00[ i]);
write_sfm(12,fen1);        
write_sfm(9,shi1);        }
else  {LED2=0;}
if((((fen==fen1)&&(shi==shi1)&&(flag2==0))||((fen-1==fen1)&&(shi==shi1)))&&(flag4==0) )
{  xianshi();}
if((fen==fen2)&&(shi==shi2)&&(flag2==1))
{write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_11[ i]);
write_sfm(12,fen2);        
write_sfm(9,shi2);        }
if((((fen==fen2)&&(shi==shi2)&&(flag2==0))||((fen-1==fen2)&&(shi==shi2)))&&(flag4==0) )
{ xianshi(); }
if((fen==fen3)&&(shi==shi3)&&(flag2==1))
{write_com(0x80+0x40);
for(i=0;i<9;i++)
write_date(Alarm_22[ i]);
write_sfm(12,fen3);        
write_sfm(9,shi3);        }
if((((fen==fen3)&&(shi==shi3)&&(flag2==0))||((fen-1==fen3)&&(shi==shi3)))&&(flag4==0))
{xianshi(); }
if((fen==fen4)&&(shi==shi4)&&(flag2==1))
{write_com(0x80+0x40);
for(i=0;i<15;i++)
write_date(deng[ i]);                }
if((((fen==fen4)&&(shi==shi4)&&(flag2==0))||((fen-1==fen4)&&(shi==shi4)))&&(flag4==0) )
{ xianshi();} }
void main()                        
{init();
while(1)
{        if((K4==0)&&(flag3==1))
{  delay(200);
K4num++;
delay(100);
if(K4num==5)
K4num=0;}         
if(K4==0&&flag3==0)
{delay(5);
if(K4==0)
{flag2=0;
flag3=1;}
delay(300);}
if(K4num==0)
{time();        
flag4=0;          }
if(K4num==1)
{guangbo();
flag4=1;}
if(K4num==2)
{ shangke();        
flag4=1;  }
if(K4num==3)
{        xiake();
flag4=1;          }
if(K4num==4)
{         dengkong();         
flag4=1; }
clock();}}
void time0() interrupt 1        
{TH0=(65536-50000)/256;        
TL0=(65536-50000)%256;
aa++;                                
if(aa==20)        
{        aa=0;
miao++;
led=~led;
if(miao==60)
{miao=0;
fen++;
flag2=1;
if(fen==60)
{        fen=0;
shi++;
if(shi==24)
{        shi=0;                }
if(flag1==1)
{write_sfm(9,shi);
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');}}
if(flag1==1)
{write_sfm(12,fen);
write_com(0x80+0x40+11);
write_date(':');
write_com(0x80+0x40+14);
write_date(' ');
write_com(0x80+0x40+15);
write_date(' ');}        
}                }        }

回复

使用道具 举报

ID:94031 发表于 2020-6-14 06:36 | 显示全部楼层
Uint i, 改为  uint i,
回复

使用道具 举报

ID:655985 发表于 2020-6-14 16:16 | 显示全部楼层
试过了,这样改还多了几个错误
回复

使用道具 举报

ID:655985 发表于 2020-6-14 16:17 | 显示全部楼层
xuyaqi 发表于 2020-6-14 06:36
Uint i, 改为  uint i,

试过了,不行,还多了几个错误
回复

使用道具 举报

ID:213173 发表于 2020-6-14 21:38 | 显示全部楼层
1518866413 发表于 2020-6-14 16:17
试过了,不行,还多了几个错误

错误:
typedef unsigned int u8;
typedef unsigned char u16;

正确:
typedef unsigned int uint;
typedef unsigned char uchar;

错误:Uint i,miao,fen,fen1,....正确:uint i,miao,fen,fen1,....



错误:write_date(table[num]);delay(10);
正确:write_date(table2[num]);delay(10);

错误:if(K3num==1)。
正确:if(K3num==1)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表