资源简介
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
相关资源
- ImageList加载BMP在ListCtrl中显示的Demo
- STC89c52驱动
- 单片机STC89C58程序
- keil 4 STC元件库 STC.CDB
- 功能强大的ClistCtrl类 更改单元格的颜
- STC12C5A60S2LQFP44封装完整的原理图以及
- 电动牙刷开发例程stc15系列单片机
- STC15系列驱动LCD_12864
- stc15系列读GY_25角度
- STC15系列读DS18B20程序,12Mhz时钟晶振
- SIm900A短信控制
- altium designer STC_单片机原理图库
- STC89C52RC使用电位器控制WS2812B调光
- ModbusTCP_Slave程序
- stc89c52蜂鸣器音乐栀子花开
- GPS STC15程序,51程序
- 吴恩达老师深度学习课程作业用到的
- STC12C5A60S2与MLX90614红外温度传感器程序
- stc8a8k64s4a12串口发送任意字符串
- STC15W204产生40KHZ方波
- Stc89C52 超声波测距 并且 1602显示
- 寻迹避障小车简单避障程序
- AD批量生产PCB-STC15F2K60S2 + QN8025+M62429
- stc12c5a60s2 PID PWm
- 两轮平衡车STC12单片机
- ModbusTCP测试程序源码
- STC15+AHT10温湿度传感器+LCD12864.rar
- 基于STC89C52的门禁模拟控制系统
- 基于STC89C51并使用HX711的称重程序
- STC51低功耗加LoRA收发程序
评论
共有 条评论