<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

        運用定時器中斷寫的交通燈

        作者:未知   來源:不詳   點擊數:  更新時間:2014年06月28日   【字體:

        這是一個運用51單片機寫的交通燈的例子,可以顯示時間,紅黃藍等,第一個按鍵是左右路通行20S,第二個按鍵是上下路通行20S,第一個按鍵是所有路都是紅燈20S。這是從時鐘該來的程序,與上一個始終的程序大體相同。

         

        #include<reg52.h>
        #define uint unsigned int
        int code table[]={
         0xc0,0xf9,0xa4,0xb0,0x99,0x92,  
         0x82,0xf8,0x80,0x90,
        };
        sbit hongA=P0^0;
        sbit huangA=P0^1;
        sbit lvA=P0^2;
        sbit hongB=P0^3;
        sbit huangB=P0^4;
        sbit lvB=P0^5;
        sbit key1=P1^0;
        sbit key2=P1^1;
        sbit key3=P1^2;
        int t=0,t1=0,flag=0,tt0,tt1;
        void delay();
        void ziyou();
        void Bfangxing();
        void Afangxing();
        void zhongduan();
        void main()

          EA=1;//開總中斷
         TMOD=0x01;//設置定時器0為工作方式1
         TH0=(65536-50000)/256;
         TL0=(65536-50000)%6; 
         ET0=1;//開定時器0中斷
         TR0=1;//啟動定時器0

         P0=0xff;
         lvA=0;//打開綠燈
         hongB=0;
         while(1)
         
           
            if(flag==0)  ziyou();//自由狀態
            if(flag==1)  Afangxing();//B放行期間改變
            if(flag==2)  Bfangxing();//B放行期間改變 
            if(flag==3)  zhongduan();//B放行期間改變        
            if(tt0==-1) {tt1--;tt0=9;}
            P3=0X01;
            P2=table[tt1];
            delay();
            P3=0X02;
            P2=table[tt0];
               delay();   
         }
        }
        void delay()
        {
          int i;
           for(i=0;i<200;i++);
        }
        void ziyou()//自由狀態
        {
          if(t==20)//達到1s
           {
            t=0;
            t1=t1+1;
            tt0--;//減少秒
           }
          if(t1==0)
           {
            hongB=0;lvB=1;huangB=1;//B道
            lvA=0;huangA=1;hongA=1;//A道
            tt1=3;tt0=0;
           }
          if(t1==30)//30
           {
            hongB=0;lvB=1;huangB=1;//B道
            lvA=1;huangA=0;hongA=1;//A道
            tt1=0;tt0=5;
           }
          if(t1==35)//35
           {
            hongB=1;lvB=0;huangB=1;//B道
            hongA=0;huangA=1;lvA=1;//A道
            tt1=2;tt0=0;
           }
          if(t1==55)//55
           {
            hongA=0;lvA=1;huangA=1;//A道
            lvB=1;huangB=0;hongB=1;//B道
            tt1=0;tt0=5;
           }
          if(t1==60)//60
           {
            t1=0;
            tt1=0;tt0=0;
            
        }
        void Afangxing()//A放行
        {
           hongB=0;lvB=1;huangB=1;//B道
         lvA=0;huangA=1;hongA=1;//A道
               if(t==20)//達到1s
           {
            t=0;
            t1=t1+1;
            tt0--;
           }
            if(t1==15)
             {
               t1=30;//跳至30
            flag=0;
           
             }
        }
        void Bfangxing()//B放行
         
          hongB=1;lvB=0;huangB=1;//B道
          hongA=0;huangA=1;lvA=1;//A道
               if(t==20)//達到1s
           {
            t=0;
            t1=t1+1;
            tt0--;
           }
            if(t1==15)
             {
               t1=55;//跳至55
            flag=0;
             }
        }
        void zhongduan()//key3
          
          hongB=0;lvB=1;huangB=1;//B道
          hongA=0;huangA=1;lvA=1;//A道
               if(t==20)//達到1s
           {
            t=0;
            t1=t1+1;
            tt0--;
           }
            if(t1==20)
             {
               t1=0;//跳至55
            flag=0;
             }
        }
        void time0() interrupt 1
        {
         TH0=(65536-50000)/256;
         TL0=(65536-50000)%6;
         t++; //tt=20為1s
         if(key1==0)
         {
           if(t1>30) {flag=1;t=0;t1=0;tt1=1;tt0=5;}//35
         
         
         if(key2==0)  
         {
           if(t1<35) {flag=2;t=0;t1=0;tt1=1;tt0=5;}//35
         }
         if(key3==0)  
         tt1=2;tt0=0;
            flag=3;t=0;t1=0;
         }
        }

        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮