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

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

        燈光校驗程序

        作者:huqin   來源:本站原創   點擊數:  更新時間:2014年04月08日   【字體:
        #include<reg52.h>
        #include<intrins.h>
        #define uchar unsigned char
        #define uint unsigned int
        sbit SER = P2^0;
        sbit SRCLK = P2^1;
        sbit SRCLR = P2^2;
        sbit RRCLK =  P2^3;
        sbit E = P2^4;
        sbit KEY1=P3^0;
        sbit KEY2=P3^1;
        sbit KEY3=P3^2;
        sbit KEY4=P3^3;
        uchar code table595[]={0x30,0x7e,0x29,0x2c,0x66,0xa4,0xa0,0x3e,0x20,0x24};
        uchar code Table[]={0xee,0xdd,0xbb,0x77};//P1
        uchar code Led[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //P0
        uchar flag,flag1,tt,i,j; //flag為手動、自動轉換
        char m;
        void X74HC595(uchar a)
        {
         uchar i,temp;
         E = 1;
         _nop_();
         _nop_();
         E = 0;
         SRCLR = 1;
         temp=table595[a];
         for(i=0;i<8;i++)
         {
          temp=_crol_(temp,1);
          SER = temp & 0x80; //SER連J9的1口
          SRCLK = 0;
          _nop_();
          SRCLK = 1; 
          _nop_();
          RRCLK= 0; 
          _nop_();
          RRCLK = 1;
          _nop_(); 
         }
        }
        void delay(uchar b)
        {
         uchar x,y;
         for(x=110;x>0;x--)
          for(y=b;y>0;y--);
        }
        void X74HC573(uchar c,uchar d)
        {
          P1=Table[c];
         P0=Led[d];
         delay(5);
        }
        void init()
        {
         EA=1;
         ET0=1;
         TMOD=0x01;
         TH0=(65536-50000)/256;
         TL0=(65536-50000)%256;
         tt=0;
         flag=0; //默認自動
         TR0=1; //啟動定時器0
         flag1=0;//自動時正常運行
         X74HC595(m);
         X74HC573(0,0);
        }
        void exter()
        {
         flag=!flag;
         TR0=!TR0;
         TH0=(65536-50000)/256;
         TL0=(65536-50000)%256;
        }
        void time() interrupt 1
        {
         tt++;
         TH0=(65536-50000)/256;
         TL0=(65536-50000)%256;
        }
        void key()
        {
         if(KEY1==0||KEY2==0||KEY3==0||KEY4==0)
         {
          delay(5);
          if(KEY1==0)
          {
           exter();
           while(!KEY1);
          }
          else if(KEY2==0&&flag==1)
          {
           if(i==3&&j==7)
           {
            i=0;
            j=0;
            X74HC573(0,0);
           }
           else if(j!=7)
            X74HC573(i,++j);
           else
            X74HC573(++i,0);
           X74HC595(++m);
           while(!KEY2);
          }
          else if(KEY3==0&&flag==0)
          { 
           flag1=!flag1;
           TR0=!TR0;
           while(!KEY3);
          }
          else if(KEY4==0&&flag==1)
          {
           if(i==0&&j==0)
           { 
            i=3;
            j=7;
            X74HC573(3,7);
           }
           else if(j!=0)
            X74HC573(i,--j);
           else
           {
            j=0;
            X74HC573(--i,0);
           }
           X74HC595(--m);
           while(!KEY4);
          }    
         }
        }
        void main()
        {
         init();
         while(1)
         {
          if(m>0&&m<9) 
           key();
          else if(m==0)
          {
           if(KEY4==0)
            m=10;
           key();
          }
          else if(m==9)
          {
           if(KEY2==0)
            m=-1;
           key();
          }
          if(tt==30&&flag==0)
          {
           tt=0;
           TH0=(65536-50000)/256;
           TL0=(65536-50000)%256;
           if(i==3&&j==7)
           {
            i=0;
            j=0;
            X74HC573(0,0);
           }
           else if(j!=7)
            X74HC573(i,++j);
           else
           {
            j=0;
            X74HC573(++i,0);
           }
           if(m<9)
            X74HC595(++m);
           else if(m==9)
           {
            m=0;
            X74HC595(m);
           }  
          } 
           }
        }
        關閉窗口

        相關文章

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