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

📄 main.c

📁 灯光控制
💻 C
📖 第 1 页 / 共 2 页
字号:
   SBUF=HEAD2;
   while(TI==0);
   TI=0;
  // REST_WDT();

   SBUF=(uchar)(Data_Length>>8);
   while(TI==0);
   TI=0;
 // REST_WDT();
   SBUF=(uchar)Data_Length;
   while(TI==0);
   TI=0;
 //  REST_WDT();

   SBUF=0xff;
   while(TI==0);
   TI=0;
 //  REST_WDT();
   SBUF=ucRemoteAdd;
   while(TI==0);
   TI=0;
//  REST_WDT();

   SBUF=0x00;
   while(TI==0);
   TI=0;
 //  REST_WDT();

   for(i=0;i<sizeof(Send_Buf);i++)
   {
     // REST_WDT(); 
   	  SBUF=	Send_Buf[i];
	  while(TI==0);
	  TI=0; 	 
   }

}

//*******T0中断函数***************
void TMR0_int(void)  interrupt 1 using 1
{
   TH0=0xff;//100us
   TL0=0X38;

   time20ms++;
   if( time20ms>20)
   {
   	   time20ms=0;
   }
}

//************延时函数************

void Delay_Time(uint TimeCount)
{
   uchar i;
   do
   {
     TimeCount--; 
   	 for(i=0;i<200;i++)
	 {
	 //  REST_WDT();  
	 }    
   }while(TimeCount>0);

}

//*********变化模式函数**********
void mode1(void)  //整体亮灭
{
   uint i,ucAdd;
   Clear_Buf();
   for(ucAdd=0;ucAdd<24;ucAdd++)
   {
     Send_Data(ucAdd);
	}
   Delay_Time(200);
   for(ucAdd=0;ucAdd<24;ucAdd++)  //23层整体亮
   {  
         for(i=0;i<sizeof(Send_Buf);i++)
          {
   	         Send_Buf[i]=0xff;   
          }  
           Send_Data(ucAdd);
   }
   Delay_Time(ucQuick*4000);//原来是200倍。
   for(ucAdd=0;ucAdd<24;ucAdd++)  //23层整体灭
   {
        for(i=0;i<sizeof(Send_Buf);i++)
         {
   	      Send_Buf[i]=0x00;   
         }  
        Send_Data(ucAdd);
   }
   Delay_Time(ucQuick*2);
//*********************************
   Clear_Buf();
   for(ucAdd=0;ucAdd<24;ucAdd++)
   {
     Send_Data(ucAdd); 
	}
   Delay_Time(200);
//************************************
 for(ucAdd=0;ucAdd<24;ucAdd++)  //层变
   {
        

       for(i=0;i<sizeof(Send_Buf);i++)
         {
   	      Send_Buf[i]=0xff;   
         }  
        Send_Data(ucAdd);
        Delay_Time(ucQuick*200);
       for(i=0;i<sizeof(Send_Buf);i++)
         {
   	      Send_Buf[i]=0x00;   
         }  
        Send_Data(ucAdd);
		Delay_Time(ucQuick*2);

   }
   Clear_Buf();
   for(ucAdd=0;ucAdd<24;ucAdd++)
   {
     Send_Data(ucAdd); 
	}
   Delay_Time(20);
    for(ucAdd=0;ucAdd<24;ucAdd++)
	{
	  for(i=0;i<24;i++)
	  {
	     Send_Buf[i]=PIC3[ucAdd][i];  
	  }
      Send_Data(ucAdd); 
      Delay_Time(ucQuick*200);
	}
	 for(ucAdd=0;ucAdd<24;ucAdd++)
	{
	  for(i=0;i<24;i++)
	  {
	     Send_Buf[i]=~PIC3[ucAdd][i];  
	  }
      Send_Data(ucAdd); 
      Delay_Time(ucQuick*200);
	}
 
}

//****************变化方式单点跳变***********
void mode2(void)
{
   uint i,ucAdd;
   Clear_Buf();
   for(ucAdd=0;ucAdd<24;ucAdd++)
   {
     Send_Data(ucAdd); 
	}
   Delay_Time(20);
  
    for(ucAdd=0;ucAdd<24;ucAdd++)  //层变
    {
       for(i=0;i<sizeof(Send_Buf);i++)
         {
   	      Send_Buf[i]=0xff;   
         }  
        Send_Data(ucAdd);
        Delay_Time(ucQuick*200);
       for(i=0;i<sizeof(Send_Buf);i++)
         {
   	      Send_Buf[i]=0x00;   
         }  
        Send_Data(ucAdd);
		Delay_Time(ucQuick*200);

     }

   
}

//***************整体渐变的变化方式********
void mode3(void)
{
   uchar i,j,ucAdd;
 // uint Dimming_Data_Up,Dimming_Data_Down,j; 


    Clear_Buf();
   for(ucAdd=0;ucAdd<24;ucAdd++)
   {
     Send_Data(ucAdd); 
	}
   Delay_Time(20);

  for(i=0;i<sizeof(Send_Buf);i++)//单列跑动
    {   
      for(ucAdd=0;ucAdd<24;ucAdd++) 
       {  
	      for(j=0;j<24;j++)  
           {       
              if(j==i)
		       {Send_Buf[j]=0xff;}
   	          else
		       {Send_Buf[j]=0;}  
            }  
           Send_Data(ucAdd);
	    }
        Delay_Time(ucQuick*200);       
	}  

} 

//**********混合渐变*******************************
void mode4(void)
{
   uchar i,j;
  // uint Dimming_Data_Up,Dimming_Data_Down,j; 


   Clear_Buf();   //清屏
   Send_Data(0xff);
   Delay_Time(5000);
  for(i=0;i<23;i++)
    {  
	   for(j=0;j<24;j++)
	   {
	   Send_Buf[i]=PIC1[i][j];
	   }
       Send_Data(i);
	}
	Delay_Time(ucQuick*200); 
  for(i=0;i<23;i++)
    {  
	   for(j=0;j<24;j++)
	   {
	   Send_Buf[i]=PIC2[i][j];
	   }
       Send_Data(i);
	}
	Delay_Time(ucQuick*200); 
 

}


⌨️ 快捷键说明

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