資源簡介
stc 51單片機實現的交通燈實例(包括keil程序,protues仿真)

代碼片段和文件信息
??#include
??char?shu[11]={0xc00xf90xa40xb00x990x920x820xf80x800x900xff};
??char?xian[4]={0x010x020x040x08};
??char?dis[4][4]={3030202030302020};
??char?time[4];
??int?ii=0;
??int?jj=0;
???int?con=0;
???int?d;
???int?flag=0;
???sbit?a=P0^7;
???int?g=0;
???sbit?j1=P3^1;
???sbit?j2=P3^0;
??
??? ?int?flagg=0;
?int?fl=0;
?void?clear()
??{?int?j;
??for(j=0;j<4;j++)
??time[j]=dis[0][j];
??TH0=64536/256;
??TL0=64536%256;
??TMOD=0x10;
??ET0=1;
??TR0=1;
??EA=1;
??
??d=0x0c;
??}
??void?de()
??{int?i;
??for(i=0;i<1000;i++);
??} ???
???void?displayk()
?{ ??char?time[4];
??int?i;
???time[0]=0;time[1]=0;time[2]=0;time[3]=0;
???????for(i=0;i<4;i++)
???{P0=shu[time[i]];
???P1=xian[i];P2=0xc0;
???de();
???P0=0xff;
?
????}
??}
????void?key()
???{?flagg=0;
???if(j1==0)
?????{?de();
?if(j1==0)
?displayk();
?flagg=1;
?
?}
?if(j2==1)
?fl=0;
?}
??
?/*?void?dispp()
??{ int?i;
??
???time[0]=3;?time[1]=0;time[2]=3;time[3]=0;
??for(i=0;i<4;i++)
?{P0=shu[time[i]];
?P1=xian[i];P2=0x0c;
?de();
?P0=0xff;
?
?}
??}*/?
??void?display()
??{ ?int?i;
?????for(i=0;i<4;i++)
?{P0=shu[time[i]];
?P1=xian[i];P2=d;
?de();
?P0=0xff;
?
?}
??} ? ?void?key1()
{ ?if(j2==0)
????{de();
??if(j2==0)
??{
fl=1;
clear();
}
}
?}
??main()
??{ ??clear();
??????while(1)
??{key();
??if(fl==0)
??key1();
??
?? if(flagg==1)
goto?ee;
??display();
??ee:
??de();
?
??}
?
??}
??void??time_int(void)interrupt?1
??{?? ?int?j;
????????flag=0;
??????TH0=64536/256;
?????TL0=64536%256;
????TMOD=0x10;
?????ET0=1;
?????TR0=1;
????EA=1;
????con++;
???if(con>=3000)
???????{con=0;
?????????if(time[1]==0)
?????????????{time[1]=9;
???????????if(time[0]!=0)
???????????time[0]--;
???????????? ?else
?????????????{ii++;
??????????????if(ii==4)
?????????????????ii=0;
????????????????flag=1;?
??????????????for(j=0;j<2;j++)
?????????????????time[j]=dis[ii][j];
/* if(d==0x0c)
{d=0x0a;
?}
?else?if(d==0x0a)
?{d=0x11;
?}
?else?if(d==0x11)
?{d=0x21;}
?else?if(d==0x21)
?{d=0x11;
?}*/
???
???????????}
?}
?else
?time[1]--;
?
if(time[3]==0)
???{time[3]=9;
??if(time[2]!=0)
??time[2]--;
??else
?????{jj++;
??????if(jj==4)
?????????jj=0;
????
???????for(j=2;j<4;j++)
???????time[j]=dis[jj][j];
???flag=1;
/*if(d==0x0c)
{d=0x0a;
?}
?else?if(d==0x0a)
?{d=0x11;
?}
?else?if(d==0x11)
?{d=0x21;}
?else?if(d==0x21)
?{d=0x11;
?}?*/
?}
???
??}
?else
?time[3]--;
?}
??if(flag==1)
?{flag=0;
??if(d==0x0c)
{d=0x12;
?}
?else?if(d==0x12)
?{d=0x21;
?}
?else?if(d==0x21)
{d=0xc0;
?}?
?else?
?{d=0x0c;
?}
?
}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????122124??2011-08-30?16:42??交通燈\k.DSN
?????文件????????742??2012-03-30?16:44??交通燈\k.PWI
?????文件???????2254??2011-11-15?15:54??交通燈\k.SDF
?????文件?????122124??2011-08-30?16:10??交通燈\Last?Loaded?k.DBK
?????文件???????7187??2011-10-29?14:29??交通燈\q
?????文件???????2236??2011-10-29?14:29??交通燈\q.hex
?????文件?????????39??2011-10-29?14:29??交通燈\q.lnp
?????文件??????12317??2011-10-29?14:29??交通燈\q.M51
?????文件???????1358??2011-10-15?09:45??交通燈\q.opt.bak
?????文件????????718??2011-10-29?14:29??交通燈\q.plg
?????文件???????2169??2011-10-15?09:45??交通燈\q.Uv2.bak
?????文件??????57033??2011-10-29?14:29??交通燈\q.uvopt
?????文件??????13396??2011-10-22?10:30??交通燈\q.uvproj
?????文件???????1351??2011-09-02?20:13??交通燈\q_Opt.Bak
?????文件???????2145??2011-06-03?23:40??交通燈\q_Uv2.Bak
?????文件??????57653??2011-10-22?10:30??交通燈\q_uvopt.bak
?????文件???????5115??2002-04-16?14:32??交通燈\STARTUP.A51
?????文件??????11665??2011-10-29?14:29??交通燈\STARTUP.LST
?????文件????????758??2011-10-29?14:29??交通燈\STARTUP.OBJ
?????文件???????2871??2011-09-02?20:11??交通燈\Text1.c
?????文件???????8204??2011-10-29?14:29??交通燈\Text1.LST
?????文件???????8077??2011-10-29?14:29??交通燈\Text1.OBJ
?????目錄??????????0??2011-10-29?14:29??交通燈
-----------?---------??----------?-----??----
???????????????441536????????????????????23
評論
共有 條評論