资源简介
很牛叉的交通灯仿真程序,值得下载,内附很美的proteus十字路口模型,并附有keil程序,同学们赶紧下载。

代码片段和文件信息
#include
#include
#define uchar unsigned char
#define uint unsigned int
void delay(uint c);
//PA、PB、PC端口及命令端口地址定义
#define PA XBYTE[0x0000]
#define PB XBYTE[0x0001]
#define PC XBYTE[0x0002]
#define COM XBYTE[0x0003]
sbit P1_7=P1^7;
sbit P1_6=P1^6;
sbit P1_5=P1^5;
sbit P1_4=P1^4;
sbit P1_3=P1^3;
sbit P1_2=P1^2;
sbit P1_1=P1^1;
sbit P1_0=P1^0;
sbit P3_1=P3^1;
sbit P3_2=P3^2;
sbit P3_3=P3^3;
sbit P2_7=P2^7;
sbit P2_6=P2^6;
sbit P2_5=P2^5;
sbit P2_4=P2^4;
sbit P2_3=P2^3;
sbit P2_2=P2^2;
sbit P2_1=P2^1;
sbit P2_0=P2^0;
uchar s=0red_tgreen_ttflag=0;
uchar WE_shiWE_geSN_shiSN_geset_tset_flag=0;
//待显示字符编码队列
uchar code DSY_CODE[]={
0Xc0/*0*/
0Xf9/*1*/
0Xa4/*2*/
0Xb0/*3*/
0X99/*4*/
0X92/*5*/
0X82/*6*/
0Xf8/*7*/
0X80/*8*/
0X90/*9*/
0Xff/*NULL*/
};
//数码管选通
uchar code DSY_choice[]={0x010x020x040x08};
//键盘程序
void key_scan()
{
if(P1_5==0) //加1键
{
delay(50);
if(P1_5==0)
{
set_t=set_t+1;
} while(P1_5==0);
}
if(P1_4==0) //加5键
{
delay(50);
if(P1_4==0)
{
set_t=set_t+5;
} while(P1_4==0);
}
if(P1_3==0) //减5键
{
delay(50);
if(P1_3==0)
{
set_t=set_t-5;
} while(P1_3==0);
}
if(P1_2==0) //减1键
{
delay(50);
if(P1_2==0)
{
set_t=set_t-1;
} while(P1_2==0);
}
}
//延时
void delay(uint c)
{
uint ij;
for(i=0;i for(j=0;j<100;j++);
}
void t0_second() interrupt 1
{
TH0=0x3c; //恢复定时器0初值
TL0=0xb0;
s++;
if(s==20)
{
s=0;
t--;
}
}
void t1(void) interrupt 3 using 1
{
TH0=0xff;
TH1=0xff;
delay(2);
if(T1==0)
{
PA=0x1B;
PB=0xff;
PC=0xff;
};
while(1)
{ if(P1_6==0)
{
delay(2);
if(P1_6==0);
break;
}
}
}
//主程序
void main()
{
COM=0x80; //8255工作方式选择:PA、PB均输出,工作方式0
PA=0xff;
TMOD=0x61;
TH1=0xff;
TL1=0xff;
TH0=0x3C;
TL0=0xB0;
EA=1;
ET0=1;
ET1=1;
set_t=20;
t=20;
green_t=20;
red_t=20;
while(1)
{
while(P1_0==0)
{
if(P1_6==0)
{
delay(50);
if(P1_6==0)
{
set_flag++;
if(set_flag==2)
{
set_flag=0;
}
while(P1_6==0);
}
}
if(set_flag==0)
{
PA=0x2B;
key_scan();
if(set_t<5)
{
set_t=20;
}
if(set_t>95)
{
set_t=20;
}
if(set_t>95)
{
set_t=20;
}
red_t=set_t;
t=red_t;
PB=DSY_choice[0];
PC=DSY_CODE[set_t/10];
delay(10);
PB=DSY_choice[1];
PC=DSY_CODE[set_t%10];
delay(10);
PB=DSY_choice[2];
PC=DSY_CODE[(set_t-5)/10];
delay(10);
PB=DSY_choice[3];
PC=DSY_CODE[(set_t-5)%10];
delay(10);
}
if(set_flag==1)
{
PA=0x1D;
key_scan();
if(set_t<5)
{
set_t=20;
}
green_t=set_t;
PB=DSY_choice[0];
PC=DSY_CODE[set_t/10];
delay(10);
PB=DSY_c
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 186974 2012-01-08 12:35 最牛的交通灯proteus仿真附keil程序\Backup Of traffic.DBK
文件 29630 2012-01-08 13:56 最牛的交通灯proteus仿真附keil程序\ISIS.dmp
文件 5231 2012-01-14 09:40 最牛的交通灯proteus仿真附keil程序\keil 程序\main.c
文件 15951 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\main.LST
文件 6174 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\main.OBJ
文件 6376 2009-05-07 14:37 最牛的交通灯proteus仿真附keil程序\keil 程序\STARTUP.A51
文件 14062 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\STARTUP.LST
文件 749 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\STARTUP.OBJ
文件 4889 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic
文件 4270 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic.hex
文件 59 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic.lnp
文件 18893 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic.M51
文件 187 2012-02-04 17:42 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic.plg
文件 56169 2012-02-04 17:42 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic.uvopt
文件 13399 2012-01-14 11:09 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic.uvproj
文件 56173 2012-02-04 15:06 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic_uvopt.bak
文件 13392 2012-01-09 22:08 最牛的交通灯proteus仿真附keil程序\keil 程序\traffic_uvproj.bak
文件 188988 2012-01-14 01:17 最牛的交通灯proteus仿真附keil程序\Last Loaded traffic.DBK
文件 189122 2012-02-04 17:42 最牛的交通灯proteus仿真附keil程序\traffic.DSN
文件 4270 2012-01-14 09:48 最牛的交通灯proteus仿真附keil程序\traffic.hex
文件 816 2013-06-21 02:22 最牛的交通灯proteus仿真附keil程序\traffic.PWI
目录 0 2013-06-21 02:22 最牛的交通灯proteus仿真附keil程序\keil 程序
目录 0 2013-06-21 02:22 最牛的交通灯proteus仿真附keil程序
----------- --------- ---------- ----- ----
815774 23
- 上一篇:j0e2ql.rar
- 下一篇:PID控制超详细教程(含软硬件上位机,很好
相关资源
- 51 单片机 红外避障小车 大集合136
- 基本放大电路multisim仿真.ms14
- STC8951系列单片机中方指南
- 一个labview仿真的函数信号发生器.vi
- 60个HFSS 仿真模型库
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- Quartus II 15.0中仿真Altera三速以太网I
- Quartus II 15.0中仿真Altera三速以太网I
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 瑞利信道的仿真,包括信号的调制,
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- proteus仿真 AT89C51输出各种波形
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 一种红外遥控编解码仿真
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 单片机与温度传感器DS18B20的程序设计
- 毕业论文之温度传感器DS18B20(源码
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
评论
共有 条评论