• 大小: 130KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-28
  • 语言: 其他
  • 标签: protues  中断  

资源简介

含有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

评论

共有 条评论