资源简介
含有protues图和程序(全注释,连变量都注释)要求:1、红灯和绿灯相互转换时经过黄灯,黄灯闪烁三次(6秒);
2、主干道方向通行30秒,辅干道方向通行20秒,单独左转信号15秒;先直行信号,后左转信号。
3、设手动、自动、特殊情况三种方式。
4、特殊情况时所有路口红灯都亮,给120、110等通行。
5、自动时显示各种状态倒计时。
代码片段和文件信息
/*******************************************************************************
================================================================================
【平 台】STC89C51_sumjess平台
【编 写】sumjess
【E-mail 】1371129880@qq.com
【软件版本】V2.0
【最后更新】2019年06月10日
【相关信息参考下列地址】
【网 站】
https://blog.csdn.net/qq_38351824
http://www.51hei.com/bbs/mcu-2-1.html
---------------------------------------------------------------------------------
【dev.env.】MDK4.02及以上版本
【Target 】STC89C51
第一次修订:2019/05/09
第二次修订:2019/05/21
第三次修订:2019/06/10
【problem 】
(1)库内补充的不全面;
(2)库内解释部分不全面;
(3)库内还存在一定的bug;
【direction】
下一步的目标就是把库继续集成!
【explain 】
为了方便使用,我也自己写了很多的库,和优化了算法和表示方式!
【warning】
目前程序中暂无错误 !
---------------------------------------------------------------------------------
没有完美的代码,只有不断的奉献,大家一起努力;
赠人玫瑰手留余香,欢迎大家反馈bug!
================================================================================
********************************************************************************/
#include
#include
#define uchar unsigned char
#define uint unsigned int
uchar h;
uint r=0;
uint s;
uchar flag=1;
uchar code dis[]={0Xc00Xf90Xa40Xb00X990X920X820Xf80X800X900Xff};
// 0 1 2 3 4 5 6 7 8 9 -
sbit key = P3^5;
void delay(uint c) //延时程序
{
uint ij;
for(i=0;i for(j=0;j<100;j++);
}
void t0(void) interrupt 0 using 1
{
delay(2);
if(INT0==0)
{
r++;
if(r==2)
{
r=0;
}
r%=2;
if(r==0)
{
P0=0xeb;
P1=0x00;
P2=0xff;
}while(1)
{
if(INT0==0|INT1==0|T0==0)
{
delay(2);
if(INT0==0|INT1==0|T0==0)
break;
}
if(key==0) {flag=0;break;}
}
}
}
void t1(void) interrupt 2 using 1
{
delay(2);
if(INT1==0)
{
r++;
if(r==2)
{
r=0;
}
r%=2;
if(r==0)
{
P0=0xdd;
P1=0x00;
P2=0xff;
}while(1)
{
if(INT1==0|INT0==0|T0==0)
{
delay(2);
if(INT1==0|INT0==0|T0==0)
break;
}
if(key==0) {flag=0;break;}
}
}
}
void t2(void) interrupt 1 using 1
{
TH0=0xff;
TL0=0xff;
delay(2);
if(T0==0)
{
P0=0xdb;
P1=0x00;
P2=0xff;
}
while(1)
{
if(INT0==0|INT1==0)
{
delay(2);
if(INT0==0|INT1==0)
break;
}
if(key==0) {flag=0;break;}
}
}
void main(void)
{
TMOD=0x06;
TH0=0xff;
TL0=0xff;
TR0=1;
EA=1;
EX0=1;
EX1=1;
ET0=1;
while(1)
{
flag=1;
if(flag==1){
P0=0xeb;
for(h=28;h>0;h--)
{
for(s=248;s>0;s--)
{
if(flag==0) break;
P1=0x00;
P2=0xff;
P1=0x01;
P2=dis[h/10];
delay(1);
P1=0x00;
P2=0xff;
P1=0x02;
P2=dis[h%10];
dela
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-07-05 10:01 课程设计题七:交通灯控制器\
目录 0 2019-07-05 11:29 课程设计题七:交通灯控制器\STC51_sumjess\
文件 6376 2009-05-07 14:37 课程设计题七:交通灯控制器\STC51_sumjess\STARTUP.A51
文件 14049 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STARTUP.LST
文件 749 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STARTUP.OBJ
文件 9547 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess
文件 10161 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.LST
文件 14209 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.M51
文件 10167 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.OBJ
文件 4629 2019-07-05 11:07 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.c
文件 3761 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.hex
文件 59 2019-07-05 11:28 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.lnp
文件 4290 2019-07-05 11:29 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.plg
文件 64932 2019-07-05 11:29 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.uvopt
文件 13423 2019-07-05 11:29 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess.uvproj
文件 64264 2019-07-05 10:02 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess_uvopt.bak
文件 13239 2019-07-05 10:02 课程设计题七:交通灯控制器\STC51_sumjess\STC51_sumjess_uvproj.bak
目录 0 2019-07-05 11:32 课程设计题七:交通灯控制器\仿真图\
文件 24904 2019-07-05 11:32 课程设计题七:交通灯控制器\仿真图\Backup Of Traffic_light-sumjess.pdsbak
文件 24778 2019-07-05 11:28 课程设计题七:交通灯控制器\仿真图\Last Loaded Traffic_light-sumjess.pdsbak
文件 166043 2013-07-04 10:34 课程设计题七:交通灯控制器\仿真图\Traffic_light-sumjess.DSN
文件 24904 2019-07-05 11:32 课程设计题七:交通灯控制器\仿真图\Traffic_light-sumjess.pdsprj
文件 328 2019-07-05 11:32 课程设计题七:交通灯控制器\仿真图\Traffic_light-sumjess.pdsprj.DESKTOP-37880EN.别想打开!.workspace
- 上一篇:企业付款到个人零钱的源码demo
- 下一篇:CCNA—50小时完整版教程笔记
相关资源
- mega16单片机实现交通灯protues仿真,
- 压力测量系统
- 基于24C02和LCD液晶显示的电子密码锁
- 16x16点阵文字屏幕protues仿真图
- 51单片机宠物喂食器代码、仿真、电路
- protues 8086 8255 8253汇编仿真
- 24秒倒计时篮球计数器设计protues软件
- protues模拟红外发射接收
- 8字流动显示点阵Protues仿真图
- 在protues仿真的循迹小车
- 基于protues的k型热电偶采集
- 16x16点阵protues仿真和Keil程序
- 单片机温度测量,与protues仿真
- stc 51单片机实现的交通灯包括keil程序
- Qt动态数据模拟曲线
- 八路抢答器protues仿真图,asm代码
- protues仿真DSB18B20-温度显示4LED.rar
- 篮球赛计时计分器.zip
- 可以控制加减的十二进制计数器
- ADC0808 汇编 PROTUES 仿真
- protues元件对照表
- Verilog动态数码管显示十进制
- proteus仿真--播放音乐
- 基于protues的多点数字温度计设计(含
- protues8.7安装包地址,安装及破解说明
- 基于单片机的四路抢答器 包含protu
- DS18B20温度传感器Protues仿真
- Protues纯硬件仿真16进制以内计数器
- 微机原理PROTUES仿真实现秒表
- 两个单片机之间实现串口通信,包括
评论
共有 条评论