基于51单片机六车道智能交通灯设计(仿真+源程序+PCB+论文)

资料编号:204

功能介绍:(全套毕设资料齐全)

本设计的交通灯以十字路口为模型,在实现基本的功能前提下增加了时间及温度的液晶显示。从而还增加了路口高峰期的智能化人工管理机制。

实际生活中交通信号灯的规则千变万化,在不同的路口上看到的交通信号灯的规则不一样,但是总体还是相差不大,也有一些根据实际的需要而设置不同的交通规则,本次系统交通规则的设置是根据现实生活中的交通规则和多加考虑各种现实因素结合起来而制定了以下交通规则。

部分程序 展示:

    sbit   Time_Show_LED2=P2^5;  //Time_Show_LED2(直行时间显示)控制位
    sbit   Time_Show_LED1=P2^4;  //Time_Show_LED1(直行时间显示)控制位
    sbit   EW_LED2=P2^3;         //EW_LED2控制位
    sbit   EW_LED1=P2^2;         //EW_LED1控制位
    sbit   SN_LED2=P2^1;         //SN_LED2控制位
    sbit   SN_LED1=P2^0;         //SN_LED1控制位
    sbit   SN_Yellow=P1^6;       //SN黄灯
    sbit   EW_Yellow=P1^2;       //EW黄灯
    sbit   EW_ManGreen=P3^0;     //EW人行道绿灯
    sbit   SN_ManGreen=P3^1;     //SN人行道绿灯
    sbit   Special_LED=P2^6;     //交通特殊指示灯
    sbit   Busy_LED=P2^7;        //交通繁忙指示灯
    sbit   Nomor_Button=P3^5;    //交通正常按键
    sbit   Busy_Btton=P3^6;      //交通繁忙按键
    sbit   Special_Btton=P3^7;   //交通特殊按键  
    sbit   EW_ManRed=P3^3;       //EW人行道红灯
    sbit   SN_ManRed=P3^4;       //SN人行道红灯
    sbit   x=P1^7;
    sbit   y=P1^3;
    bit    Flag_SN_Yellow;      //SN黄灯标志位
    bit    Flag_EW_Yellow;       //EW黄灯标志位
    char   Time_EW;        //东西方向倒计时单元
    char   Time_SN;        //南北方向倒计时单元
    uchar  EW=60,SN=40,EWL=19,SNL=19;      //程序初始化赋值,正常模式
    uchar  EW1=60,SN1=40,EWL1=19,SNL1=19;  //用于存放修改值的变量
    uchar code table[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};  //0-9段选码
    uchar code S[8]={0x28,0x48,0x98,0x88,0x82,0x84,0x89,0x88};  
    //交通信号灯控制代码
    /**********************延时子程序**************************/
    void Delay(uchar a)
    {
        uchar    i;
        i=a;
        while(i--){;}
    }
    
    /*****************显示子函数******************************/
    void Display(void)
    {
        uchar h,l;
        h=Time_EW/10;
        l=Time_EW%10;
          P0=table[l];        
        EW_LED2=1;          //点亮EW_LED2
        Delay(2);
        EW_LED2=0;        //熄灭EW_LED2
        P0=table[h];
        EW_LED1=1;        //点亮EW_LED1
        Delay(2);
        EW_LED1=0;
    
        h=Time_SN/10;
        l=Time_SN%10;
        P0=table[l];
        SN_LED2=1;        //点亮SN_LED2
        Delay(2);
        SN_LED2=0;
        P0=table[h];
        SN_LED1=1;          //点亮SN_LED1
        Delay(2);
        SN_LED1=0;
            
        h= EW1/10;
        l= EW1%10;
        P0=table[l];
        Time_Show_LED1=1;     //点亮Time_Show_LED1
        Delay(2);
       Time_Show_LED1=0;
        P0=table[h];
        Time_Show_LED2=1;    //点亮Time_Show_LED2
        Delay(2);
        Time_Show_LED2=0;
    }  

 

下面是该资料分享下载链接:

https://pan.baidu.com/s/13zhsFJyocvT0duq7yhYzkA?pwd=ds3t 

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值