⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 led8x8_d.c

📁 通过键盘输入电子密码锁密码
💻 C
字号:
/********************************************************************************
*  描述:                                                                       *
*                8X8LED点阵子程序模块                                          *
*                                                                              *
*******************************************************************************/
#include<reg51.h>
#include<intrins.h>
#include<absacc.h>
#include<DEFINE.h>

/*行选通码*/
uchar G_code[8]={0x1f,0x3f,0x5f,0x7f,0x9f,0xbf,0xdf,0xff};

void delay2(void)
{
  _nop_();
  _nop_();
}
void LED8X8_BRISK(void)
{
  uchar	i;
  uint  j;

/*---------------------*/
  P0=0xff;
  P2_1=0;
  P2_2=1;
  for(j=0;j<1000;j++)
  {
    for(i=0;i<8;i++)
    {
      P1 = G_code[i];           /*第i行选通*/
      P0 = 0x7F;                /*第i行的最右边一位LED点亮*/
      delay2();
    }
    P1 = G_code[7];
    P0 = 0xbf;
    delay2();
    P0 = 0xdf;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xfb;
    delay2();
    P0 = 0xfd;
    delay2();
    for(i=7;i>0;i--)
    {
     P1 = G_code[i];
     P0 = 0xfe;
     delay2();
    }
        
    P1 = G_code[0];
    P0 = 0xfe;
    delay2();
    P0 = 0xfd;
    delay2();
    P0 = 0xfb;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xdf;
    delay2();
    P0 = 0xbf;
    delay2();
  }
/*---------------------*/
  for(j=0;j<1000;j++)
  {
    for(i=1;i<7;i++)
    {
      P1 = G_code[i];
      P0 = 0xbf;
      delay2();
    }
    P1 = G_code[6];
    P0 = 0xdf;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xfb;
    for(i=6;i>1;i--)
    {
      P1 = G_code[i];
      P0 = 0xfd;
      delay2();
    }
    P1 = G_code[1];
    P0 = 0xfd;
    delay2();
    P0 = 0xfb;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xdf;
    delay2();
  }
/*---------------------*/
  for(j=0;j<2000;j++)
  {
    for(i=2;i<6;i++)
    {
      P1 = G_code[i];
      P0 = 0xdf;
      delay2();
    }
    P1 = G_code[5];
    P0 = 0xef;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xfb;
    for(i=5;i>1;i--)
    {
      P1 = G_code[i];
      P0 = 0xfb;
      delay2();
    }
    P1 = G_code[2];
    P0 = 0xf7;
    delay2();
    P0 = 0xef;
    delay2();
  }
/*---------------------*/   
  for(j=0;j<4000;j++)
  {
    for(i=3;i<5;i++)
    {
      P1 = G_code[i];
      P0 = 0xef;
      delay2();
    }
    for(i=4;i>2;i--)
    {
      P1 = G_code[i];
      P0 = 0xf7;
      delay2();
    }
  }
/*---------------------*/
    P0   = 0xff;
    P2_2 = 0;
    P2_1 = 1;

  for(j=0;j<4000;j++)
  {
    for(i=3;i<5;i++)
    {
      P1 = G_code[i];
      P0 = 0xef;
      delay2();
    }
    for(i=4;i>2;i--)
    {
      P1 = G_code[i];
      P0 = 0xf7;
      delay2();
    }
  }
/*---------------------*/
  for(j=0;j<2000;j++)
  {
    for(i=2;i<6;i++)
    {
      P1 = G_code[i];
      P0 = 0xdf;
      delay2();
    }
    P1 = G_code[5];
    P0 = 0xef;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xfb;
    for(i=5;i>1;i--)
    {
      P1 = G_code[i];
      P0 = 0xfb;
      delay2();
    }
        
    P1 = G_code[2];
    P0 = 0xf7;
    delay2();
    P0 = 0xef;
    delay2();
  }
/*---------------------*/
  for(j=0;j<1000;j++)
  {
    for(i=1;i<7;i++)
    {
      P1 = G_code[i];
      P0 = 0xbf;
      delay2();
    }
    P1 = G_code[6];
    P0 = 0xdf;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xfb;
    
    for(i=6;i>1;i--)
    {
      P1 = G_code[i];
      P0 = 0xfd;
      delay2();
     }
    P1 = G_code[1];
    P0 = 0xfd;
    delay2();
    P0 = 0xfb;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xdf;
    delay2();
  }
/*---------------------*/
  for(j=0;j<1000;j++)
  {
    for(i=0;i<8;i++)
    {
      P1 = G_code[i];
      P0 = 0x7f;
      delay2();
    }
    P1 = G_code[7];
    P0 = 0xbf;
    delay2();
    P0 = 0xdf;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xfb;
    delay2();
    P0 = 0xfd;
    delay2();

    for(i=7;i>0;i--)
    {
      P1 = G_code[i];
      P0 = 0xfe;
      delay2();
    }
        
    P1 = G_code[0];
    P0 = 0xfe;
    delay2();
    P0 = 0xfd;
    delay2();
    P0 = 0xfb;
    delay2();
    P0 = 0xf7;
    delay2();
    P0 = 0xef;
    delay2();
    P0 = 0xdf;
    delay2();
    P0 = 0xbf;
    delay2();
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -