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

📄 led_matrix.c

📁 freescale badge board 开发板测试 源程序
💻 C
📖 第 1 页 / 共 3 页
字号:

  ///////////////////////
  gb[0] =  0b00000;
  gb[1] =  0b00000;
  gb[2] =  0b00000;
  gb[3] =  0b00000;
  gb[4] =  0b00000;
  gb[5] =  0b01110;
  gb[6] =  0b11111;
  gb[7] =  0b11111;
  gb[8] =  0b11111;
  gb[9] =  0b01110;
  gb[10] = 0b00000;
  gb[11] = 0b00000;
  gb[12] = 0b00000;
  gb[13] = 0b00000;
  gb[14] = 0b00000;
  gb[15] = 0b00000;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
   gb[0] =  0b00000;
  gb[1] =  0b00000;
  gb[2] =  0b00000;
  gb[3] =  0b00000;
  gb[4] =  0b01110;
  gb[5] =  0b11111;
  gb[6] =  0b11111;
  gb[7] =  0b11111;
  gb[8] =  0b11111;
  gb[9] =  0b11111;
  gb[10] = 0b01110;
  gb[11] = 0b00000;
  gb[12] = 0b00000;
  gb[13] = 0b00000;
  gb[14] = 0b00000;
  gb[15] = 0b00000;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 

  ///////////////////////
   gb[0] =  0b00000;
  gb[1] =  0b00000;
  gb[2] =  0b00000;
  gb[3] =  0b01110;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b11111;
  gb[7] =  0b11111;
  gb[8] =  0b11111;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b01110;
  gb[12] = 0b00000;
  gb[13] = 0b00000;
  gb[14] = 0b00000;
  gb[15] = 0b00000;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    }
  ///////////////////////
  gb[0] =  0b00000;
  gb[1] =  0b00000;
  gb[2] =  0b01110;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b11111;
  gb[7] =  0b11111;
  gb[8] =  0b11111;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b01110;
  gb[14] = 0b00000;
  gb[15] = 0b00000;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
  gb[0] =  0b00000;
  gb[1] =  0b01110;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b11111;
  gb[7] =  0b11111;
  gb[8] =  0b11111;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b01110;
  gb[15] = 0b00000;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
  gb[0] =  0b01110;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b11111;
  gb[7] =  0b11111;
  gb[8] =  0b11111;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b01110;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    }
   ///////////////////////
   gb[0] =  0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b11111;
  gb[7] =  0b11111;
  gb[8] =  0b11111;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    }
   ///////////////////////
   gb[0] =  0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b11111;
  gb[7] =  0b11011;
  gb[8] =  0b11111;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);   
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
   gb[0] = 0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b11011;
  gb[7] =  0b10001;
  gb[8] =  0b11011;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);   
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
   gb[0] = 0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b11111;
  gb[6] =  0b10001;
  gb[7] =  0b00000;
  gb[8] =  0b10001;
  gb[9] =  0b11111;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);   
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    }  
  ///////////////////////
   gb[0] = 0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b11111;
  gb[5] =  0b10001;
  gb[6] =  0b00000;
  gb[7] =  0b00000;
  gb[8] =  0b00000;
  gb[9] =  0b10001;
  gb[10] = 0b11111;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
   gb[0] = 0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b11111;
  gb[4] =  0b10001;
  gb[5] =  0b00000;
  gb[6] =  0b00000;
  gb[7] =  0b00000;
  gb[8] =  0b00000;
  gb[9] =  0b00000;
  gb[10] = 0b10001;
  gb[11] = 0b11111;
  gb[12] = 0b11111;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 

  ///////////////////////
   gb[0] = 0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b11111;
  gb[3] =  0b10001;
  gb[4] =  0b00000;
  gb[5] =  0b00000;
  gb[6] =  0b00000;
  gb[7] =  0b00000;
  gb[8] =  0b00000;
  gb[9] =  0b00000;
  gb[10] = 0b00000;
  gb[11] = 0b00000;
  gb[12] = 0b10001;
  gb[13] = 0b11111;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
   gb[0] = 0b11111;
  gb[1] =  0b11111;
  gb[2] =  0b10001;
  gb[3] =  0b00000;
  gb[4] =  0b00000;
  gb[5] =  0b00000;
  gb[6] =  0b00000;
  gb[7] =  0b00000;
  gb[8] =  0b00000;
  gb[9] =  0b00000;
  gb[10] = 0b00000;
  gb[11] = 0b00000;
  gb[12] = 0b00000;
  gb[13] = 0b10001;
  gb[14] = 0b11111;
  gb[15] = 0b11111;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    }  
  ///////////////////////
   gb[0] = 0b11111;
  gb[1] =  0b10001;
  gb[2] =  0b00000;
  gb[3] =  0b00000;
  gb[4] =  0b00000;
  gb[5] =  0b00000;
  gb[6] =  0b00000;
  gb[7] =  0b00000;
  gb[8] =  0b00000;
  gb[9] =  0b00000;
  gb[10] = 0b00000;
  gb[11] = 0b00000;
  gb[12] = 0b00000;
  gb[13] = 0b00000;
  gb[14] = 0b10001;
  gb[15] = 0b11111;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
   gb[0] = 0b10001;
  gb[1] =  0b00000;
  gb[2] =  0b00000;
  gb[3] =  0b00000;
  gb[4] =  0b00000;
  gb[5] =  0b00000;
  gb[6] =  0b00000;
  gb[7] =  0b00000;
  gb[8] =  0b00000;
  gb[9] =  0b00000;
  gb[10] = 0b00000;
  gb[11] = 0b00000;
  gb[12] = 0b00000;
  gb[13] = 0b00000;
  gb[14] = 0b00000;
  gb[15] = 0b10001;
  display_screen(gb);    
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    } 
  ///////////////////////
  gb[0] = 0b00000;
  gb[1] =  0b00000;
  gb[2] =  0b00000;
  gb[3] =  0b00000;
  gb[4] =  0b00000;
  gb[5] =  0b00000;
  gb[6] =  0b00000;
  gb[7] =  0b00000;
  gb[8] =  0b00000;
  gb[9] =  0b00000;
  gb[10] = 0b00000;
  gb[11] = 0b00000;
  gb[12] = 0b00000;
  gb[13] = 0b00000;
  gb[14] = 0b00000;
  gb[15] = 0b00000;
  display_screen(gb);      
  if(KeyPressed()) 
    {
      PTAD = 0x00;  
      break;
    }   
  }
  /* Turn off RTC Interrupt */      
  RTCSC  = 0x00;
  
  /* Turn off RTC Clock */
  SCGC2_RTC=0;  
}


/* Send out a frame to the LED Matrix */
void display_screen(byte *gb) 
{
    int c;
    
   /* Determines how long a frame is displayed. Higher number is longer time */
   int scroll_delay = 6;
    while (--scroll_delay)
    {
      /* Scan out over all 16 columns */
      for (c = 0; c < COLUMNS; c++) 
      {
        /* Send out over PortE */
        if (c < COLUMNS/2) 
        {
            PTAD = 0x00;
            PTED = ~(1 << c);  /* Turn on a column */
            PTDD = 0xFF;
            PTAD = gb[c];      /* Determines which rows are turned on for that column */
            
        }
        /* Send out over PortD */
        else
        {
            PTAD = 0x00;
            PTDD = ~(1 << c - (COLUMNS/2));
            PTED = 0xFF;
            PTAD = gb[c];
            
        }
                   
        // Enter stop mode and wait for RTC wakeup 
        asm (stop #0x2000);
      } 
    }

}

⌨️ 快捷键说明

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